2016-03-21 11 views
0

の文字を並べ替え[ここに私の出力のスクリーンショットがある] [1]アンドロイド:のEditText

私は、配列の要素をソートするためにしようとしています。 私はEditText1(ed)から配列に要素を格納しており、それらをソートしてEditText2に表示したいと思います。 私はそれらを格納して表示することでやりました。私はCollections.sort(array);を使ってそれらを並べ替えたいと思っていましたが、何か間違っていることがわかります。

これは私のコードは、これまでのところです:

public class MainActivity extends AppCompatActivity { 
List<EditText> allEds = new ArrayList<EditText>(); 
EditText ed,ed2; 
RelativeLayout container; 
@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    ed= (EditText)findViewById(R.id.editText); 
    ed2=(EditText)findViewById(R.id.editText2); 
    final Button b=(Button)findViewById(R.id.button); 
    container = (RelativeLayout)findViewById(R.id.rl); 


    b.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 

      allEds.add(ed); 
      String[] strings = new String[allEds.size()]; 
      for(int i=0; i < allEds.size(); i++){ 
       strings[i] = allEds.get(i).getText().toString(); 
       Log.e("My data", strings[i]); 
       ed2.setText(strings[i]); 

      } 


     } 
    }); 

[1]:

+1

エラーメッセージが表示されたり、間違っていると表示されたりする可能性があります。 –

+0

アレイ名の下に赤い線が表示されます。私は別の場所に入力しようとしましたが、まだ動作しませんでした。 – RAKH

+0

EditTextまたは実際のEditTextオブジェクトで文字列をソートしますか? –

答えて

1

http://i.stack.imgur.com/dowdE.jpg私はこれはおそらく動作(これとのonClickのコードを置き換え)すると思います。

String[] strings = ed.getText().toString().split("\\r?\\n"); 
Arrays.sort(strings); 
String output = TextUtils.join("\\n",strings); 
ed2.setText(output); 
+1

ありがとうございます!!!!!!!!! – RAKH

3

は次のようなものですか?

public class MainActivity extends AppCompatActivity { 
    List<String> allEds = new ArrayList<String>(); 
    EditText ed,ed2; 
    RelativeLayout container; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.activity_main); 
     ed= (EditText)findViewById(R.id.editText); 
     ed2=(EditText)findViewById(R.id.editText2); 
     final Button b=(Button)findViewById(R.id.button); 
     container = (RelativeLayout)findViewById(R.id.rl); 

     b.setOnClickListener(new View.OnClickListener() { 
     @Override 
     public void onClick(View v) { 
     String str = ed.getText().toString(); 
     String lines[] = str.split("\\r?\\n"); 
     Arrays.sort(lines); 

     ed2.setText(TextUtils.join("\n", lines)); 
    } 
}); 
関連する問題