2016-03-22 6 views
2

Android用のEditText入力を使用してArrayListを作成しました。これは私が任意のEditTextのArrayListからパラメータを渡してオブジェクトを作成する最もクリーンな方法

if (!empty){ 
    for(EditText i: inputs) { 
     String input = i.getText().toString(); 

     Person gen = new Person(inputFirstName.getText().toString(), 
inputLastName.getText().toString(), inputMaiden.getText().toString(), 
inputBirth.getText().toString(), inputBrand.getText().toString()); 

     }else{ createAlertDialog("Alert", "One or more inputs are empty"); } 

その後、

for(EditText i: inputs){ 
    if(i.getText().toString() == null){ 
     empty = true; 
} 

空になっている場合、私は現在の状態で、それは動作しません注意してくださいよ、とわずか5インスタンスを作成して確認してください主な活動に

まずありPersonオブジェクトのこれはコンストラクタのレイアウトです。オブジェクトを作成する最もクリーンな方法を見つけたいと思います。

.getText()。toString()の繰り返しがダーティです。確かに、ArrayListプロパティを使用してこれを行うよりきれいな方法があります。

+0

Personクラスの内部で呼び出されたメソッドを呼び出すことで、getText()の戻り値を取得してtoString()を呼び出すようにpersonオブジェクトを変更できます。 – JoxTraex

+0

'i.getText()。toString()'チェックは必要ありません。この回答を見てください。http://stackoverflow.com/a/19590658/1552587 – Titus

+0

すべてのEditTextを初期化したと仮定すると、nullを返すべきではありません。空のチェックをif(i.getText()。toString()。isEmpty())に変更する必要があります。 – Gi0rgi0s

答えて

関連する問題