在getView中检索数据的最佳方式



我正在为我的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方法进行全部更改,这有点不太明显。

最新更新