Итак, я получаю сообщение об ошибке, потому что мой метод getView Custom ArrayAdapter предоставляет позицию, которая находится за пределами числа элементов в моем списке. Например, когда у меня есть один элемент, он возвращает позицию 1 после того, как я вернусь к этому действию.
EDIT:
private class CustomAdapter extends ArrayAdapter<LinearLayout>{
public CustomAdapter(Context context, int resources, List<LinearLayout> objects){
super(context, resources, objects);
}
public View getView(int position, View convertView, ViewGroup parent){
LinearLayout row;
LayoutInflater mInflater = getLayoutInflater();
if (convertView == null){
row = getItem(position);
}
else{
row = (LinearLayout) mInflater.inflate(R.layout.list_row, null);
TextView name = (TextView) row.findViewById(R.id.text1);
name.setText(settingList.get(position).name);
TextView value = (TextView) row.findViewById(R.id.text2);
value.setText(settingList.get(position).value);
}
return row;
}
}
Позиция должна основываться на том, что вы возвращаете в свой переопределенный метод getCount()
. Что вы делаете для этого?