Цикл через список Android
У меня есть следующий метод:
public List<String> getAllValue(){
List<String> list = new ArrayList<String>();
if(pref.getString(KEY_NUMBER1 , "").length()>2)
list.add(pref.getString(KEY_NUMBER1 , ""));
if(pref.getString(KEY_NUMBER2 , "").length()>2)
list.add(pref.getString(KEY_NUMBER2 , ""));
if(pref.getString(KEY_NUMBER3 , "").length()>2)
list.add(pref.getString(KEY_NUMBER3 , ""));
if(pref.getString(KEY_NUMBER4 , "").length()>2)
list.add(pref.getString(KEY_NUMBER4 , ""));
if(pref.getString(KEY_NUMBER5 , "").length()>2)
list.add(pref.getString(KEY_NUMBER5 , ""));
return list;
}
Теперь мне нужно назначить эти числа (например, KEY_NUMBER1
) следующим editTexts
:
EditText phoneNumber1, phoneNumber2, phoneNumber3, phoneNumber4, phoneNumber5;
Будучи новичком в работе со списками, мне трудно найти способ перебрать и присвоить значения этим editTexts, например
phoneNumber1.setText(KEY_NUMBER1);
phoneNumber2.setText(KEY_NUMBER2);
phoneNumber3.setText(KEY_NUMBER3);
Ответы
Ответ 1
Предполагая, что list
является вашим List<String>
, перенастроенным из функции. Вы можете перебрать его так:
for (int i=0; i<list.size(); i++) {
System.out.println(list.get(i));
}
Чтобы назначить EditText, вы можете просто использовать индекс, если вы указали количество элементов и оно исправлено (они кажутся здесь 5):
phoneNumber1.setText(list.get(0));
phoneNumber2.setText(list.get(1));
//so on ...