我正在为我的ListView
使用自定义适配器,并且我有大量数据假设显示在列表中,我有一个holder模式,但我在getView方法中使用holder.textview.setText(getItem(position))
来检索数据。对大量数据使用getItem
是个好主意,还是最好使用直接代码holder.textview.setText(citiesList.get(position).getName())
?
我的getItem方法是:
@Override
public String getItem(int position) {
return citiesList.get(position).getName();
}
您最好使用getItem,但也只能使用一次,而不是对每个holder项使用一次。
YourObject obj = getItem(position);
holder.textview.setText(obj.getName());
holder.textview2.setText(obj.getSomethingElse());
使用getItem
均值,您可以更改备份集合的实现,如果发生这种情况,则可以更改更少的代码。即从用ArrayList备份切换到Cursor。您只需要在一个地方(getItem
内部)更改它,而不需要通过getView
方法进行全部更改,这有点不太明显。