我想为 android 列表适配器的 getView 方法创建更少的工作。我一直在阅读我们可以让 ViewGroup 更新视图而不是 getView 方法,从而使滚动更快。我需要一些帮助来理解这个概念,这是我目前所拥有的:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
MyViewGroup myViewGroup;
if (convertView == null) {
myViewGroup = (MyViewGroup) LayoutInflater.from(context)
.inflate(R.layout.banana_phone, parent, false);
} else {
myViewGroup = (MyViewGroup) convertView;
}
InfoObject info = getItem(position);
myViewGroup.update(info); //how does this part work ? this is synchrounous so getView has to wait, doesn't it ?
return myViewGroup;
}
我从这个网站得到了这个想法
所以我的问题是如何在不让 getView 等待的情况下进行 viewGroup 更新。我相信我在 getView 上面的实现会等到视图组更新,对吗?所以这仍然会减慢列表视图的速度。我想要一个自定义视图组的外观示例(或者如果是这种情况,则为非自定义)?
谁能举一个例子 MyViewGroup 在扩展 ViewGroup 后会是什么样子,并说更新列表视图中的文本视图,因为我不了解如何构建自定义视图组以便它更新文本视图?