我现在使用以下代码来显示标签列表,当我选择任何项目时,在该选定项目之前会显示一个刻度线。
然后我开始下一个 Activity 。现在的问题是,当我使用后退按钮再次进入此 Activity 并在该 ListView 上滚动时,在许多标签而不是我选择的单个标签之前显示刻度线。
有人指导我我在这里犯了什么错误吗?
ImageView selectedTickImageView;
getview{
if (convertView == null) {
convertView = mInflater.inflate(R.layout.row_tags_archives, null);
holder = new ViewHolder();
holder.tickImageView= (ImageView)convertView.findViewById(R.id.tick_image_view);
holder.titletextView = ( TextView )convertView.findViewById(R.id.tv_tags_archives);
holder.tickImageView.setTag(position);
convertView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View paramView) {
if(selectedTickImageView != null){
selectedTickImageView.setVisibility(View.GONE);
}
ImageView tickImageView = (ImageView)paramView.findViewWithTag(position);
tickImageView.setVisibility(View.VISIBLE);
selectedTickImageView =tickImageView;
S=tags[position];
S=S.replace(" ", "-");
S=S.toLowerCase();
Intent intent = new Intent(HPressTagsorUpdatesActivity.this ,HPressSummariesActivity.class);
startActivity(intent);
}});
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
最佳答案
即使我有类似的问题,当我选择一个联系人时我有一个联系人列表用于自动设置..
为了解决这个问题,我添加了一个ArrayList,并添加了被点击的item的位置。在我的适配器的 getView 中绘制时,我曾经检查它是否存在于我的数组列表中。
关于android - 滚动 ListView 时选定的项目问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6649077/