android:在ExpandableListView中的getChildView被称为每个项目9次
问题描述:
我正在开发一个应用程序,使用expandableListView,一个自定义适配器。问题是每个项目调用getChildView多次。例如对于一个孩子的团体,该方法被称为9次。android:在ExpandableListView中的getChildView被称为每个项目9次
我不知道附什么样的代码,我会附上getChildView(),在评论中写的,如果你需要一个又一个
@Override
public View getChildView(int groupPosition, int childPosition, boolean b, View convertView, ViewGroup viewGroup) {
Vehicle vehicle = (Vehicle) getChild(groupPosition, childPosition);
if (convertView == null) {
LayoutInflater infalInflater = (LayoutInflater) fragment.getActivity()
.getSystemService(fragment.getActivity().LAYOUT_INFLATER_SERVICE);
convertView = infalInflater.inflate(R.layout.child_item, null);
}
TextView tv = (TextView) convertView.findViewById(R.id.country_name);
ImageView iv = (ImageView) convertView.findViewById(R.id.flag);
tv.setText(vehicle.getUname().toString());
//TODO load image
return convertView;
}
任何帮助将aprreciated
答
是getChilderCount(int groupPosition)
重写正常吗?
根据您要存储的数据类型,可能应该沿着return getGroup(groupPosition).size()
的方向。
+0
是的,它会覆盖它并返回正确的值 –
+0
我也面临同样的问题,但childView只被调用两次。如果您有解决方案,请发布。谢谢!! –
这就好。如果您正确使用视图回收,那么这会损害性能 –