Java 如何停止在ListView中回收视图
我在水平滚动中动态创建ImageView。表示图像在列表视图项中水平滚动。但我的问题是,如果我滚动列表,图像会动态重复。请帮助我停止这种图像循环。 如果是滚动也应该显示多少我添加Java 如何停止在ListView中回收视图,java,android,Java,Android,我在水平滚动中动态创建ImageView。表示图像在列表视图项中水平滚动。但我的问题是,如果我滚动列表,图像会动态重复。请帮助我停止这种图像循环。 如果是滚动也应该显示多少我添加 public View getView(int position, View convertView, ViewGroup parent) { System.out.println("getview:" + position + " " + convertView); View vi = convert
public View getView(int position, View convertView, ViewGroup parent) {
System.out.println("getview:" + position + " " + convertView);
View vi = convertView;`enter code here`
ViewHolder holder = null;
if (convertView == null) {
LayoutInflater inflater = ((Activity) context).getLayoutInflater();
vi = inflater.inflate(R.layout.list_item, null);
holder = new ViewHolder();
holder.textview1 = (TextView) vi.findViewById(R.id.textview1);
holder.textview2 = (TextView) vi.findViewById(R.id.textview2);
holder.imgscrollchild = (LinearLayout) vi
.findViewById(R.id.imgscrollchild);
vi.setTag(holder);
} else {
holder = (ViewHolder) vi.getTag();
}
tempValues = (ListModel) data.get(position);
holder.textview1.setText(tempValues.getName());
holder.textview2.setText(tempValues.getDescription());
holder.imgscrollchild.addView(createimg(tempValues.getImage(),
tempValues.getText()));`enter code here`
return vi;
}
在这里,您将向可能回收的listview项添加一个图像,而不首先删除任何可能的旧视图
根据您的布局,添加
holder.imgscrollchild.removeAllViews();
在此之前,这行代码可能足以解决问题。发布适配器代码显示您的
适配器
代码请检查上述适配器代码禁用ListView中的视图循环将影响其性能。您应该修复自定义适配器中重复出现的图像。我已还原自破坏编辑。没有代码,问题和答案就没有意义。如果我水平滚动第一行。为什么第五行也会滚动?假设列表项中有一个水平滚动视图,请调用scrollTo()
将其重置为默认位置。我应该添加到哪里请您清楚地告诉我。。?或者请您编辑代码..?请您指导我..?使用findViewById()
访问滚动视图,然后在其上调用该方法。如果你需要特别的帮助,考虑一个特定的问题(使用问题的便利,而不是评论)。
holder.imgscrollchild.removeAllViews();