所以我收到一个错误,因为我的Custom ArrayAdapter getView方法提供的位置超出了列表中的项目数。例如,当我有一个项目时,它会在我返回此活动后返回1的位置。
编辑:
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;
}
}
答案 0 :(得分:5)
该位置应基于您在重写的getCount()
方法中返回的内容。你在为此做些什么?