【发布时间】:2016-12-25 13:37:56
【问题描述】:
ListView 有问题。这里是适配器的代码:
public class AdapterListViewEncyclopedia extends ArrayAdapter<Apple> {
private int layoutResourceId;
private Context context;
private List<Apple> data;
private CellHolder holder;
public AdapterListViewEncyclopedia(Context context, int layoutResourceId, List<Apple> data) {
super(context, layoutResourceId, data);
this.layoutResourceId = layoutResourceId;
this.context = context;
this.data = data;
}
static class CellHolder
{
ImageView imageApple;
TextView tvCellAppleName;
}
@Override
public View getView(final int position, View convertView, ViewGroup parent)
{
View row = convertView;
if(row == null)
{
LayoutInflater inflater = ((Activity)context).getLayoutInflater();
row = inflater.inflate(layoutResourceId, parent, false);
holder = new CellHolder();
holder.imageApple = (ImageView) row.findViewById(R.id.imageApple);
holder.tvCellAppleName = (TextView)row.findViewById(R.id.tvAppleName);
ImageLoader imageLoader = ImageLoader.getInstance();
imageLoader.displayImage(InterfaceConfig.serverURL+data.get(position).getImageURL(), holder.imageApple);
holder.tvCellAppleName.setText(data.get(position).getName());
System.out.println(position);
row.setTag(holder);
}
else
{
holder = (CellHolder)row.getTag();
}
return row;
}
}
主要问题:
1.我在ArrayAdapter<Apple> 中有 10 个数据,当我用ListView 打开页面并用System.out.println 打印位置代码时,代码显示 0,1,2,3,4,5,0
2.当我滚动ListView时,隐藏的顶部和底部是随机位置。
谁能帮我解决我的问题?
【问题讨论】:
-
阅读您的代码... 当您设置文本时?仅当...
-
我也不知道为什么那些人使用那个臭名昭著的视图持有者......与它的问题相比,它提供了多少帮助?
-
@selvin :对不起,我已经更新了代码。
-
@pskink:我以前做过。它运行良好,但在这种情况下,我不知道为什么滚动页面时运行错误。
-
那么您在哪里/何时致电
setText?