解决ListView中图标错乱显示的问题
来源:互联网 发布:php环境测试代码 编辑:程序博客网 时间:2024/05/17 02:16
解决办法:看代码
package com.zhiren.coaltransportsystem.adapters; import android.content.Context;import android.os.Handler;import android.os.Message;import android.view.View;import android.view.ViewGroup;import android.widget.BaseAdapter;import android.widget.ImageView;import android.widget.RelativeLayout;import android.widget.TextView; import com.zhiren.coaltransportsystem.R;import com.zhiren.coaltransportsystem.activities.Stationed_List_Activity;import com.zhiren.coaltransportsystem.bean.ChoseAddressBean; import java.util.List; /** * Created by Administrator on 2016/6/3. */public class LocationAdapter extends BaseAdapter { private Context context; private List list; private ImageView icon; private Handler handler; public LocationAdapter(List list, Context context, Handler handler) { this.list = list; this.context = context; this.handler = handler; } @Override public int getCount() { return list.size(); } @Override public Object getItem(int position) { return list.get(position); } @Override public long getItemId(int position) { return position; } @Override public View getView(int position, View convertView, ViewGroup parent) { if (position > list.size() || position < 0) { return convertView; } ViewHolder viewHolder = null; if (convertView == null) { viewHolder = new ViewHolder(); convertView = View.inflate(context, R.layout.find_address_item, null); viewHolder.iv_icon_chose = (ImageView) convertView.findViewById(R.id.iv_icon_chose); viewHolder.tv_addressname_item = (TextView) convertView.findViewById(R.id.tv_addressname_item); viewHolder.rl_icon_item = (RelativeLayout) convertView.findViewById(R.id.rl_icon_item); convertView.setTag(viewHolder); } else { viewHolder = (ViewHolder) convertView.getTag(); } viewHolder.iv_icon_chose.setVisibility(View.GONE); final ChoseAddressBean choseAddressBean = (ChoseAddressBean) list.get(position); viewHolder.tv_addressname_item.setText(choseAddressBean.name); final ViewHolder finalViewHolder = viewHolder; viewHolder.rl_icon_item.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { icon.setVisibility(View.GONE); finalViewHolder.iv_icon_chose.setVisibility(View.VISIBLE); icon = finalViewHolder.iv_icon_chose; Message msg = Message.obtain(); msg.obj = choseAddressBean.name; msg.what = Stationed_List_Activity.NEW_ADDRESS; handler.sendMessage(msg); } }); if (position == 0) { viewHolder.iv_icon_chose.setVisibility(View.VISIBLE); icon = viewHolder.iv_icon_chose; } return convertView; } static class ViewHolder { private ImageView iv_icon_chose; private TextView tv_addressname_item; private RelativeLayout rl_icon_item; }}
出现图片错乱显示的问题是因为快速翻动复用了View,那么每次将其重置即可。
本文出自 “移动平台开发” 博客,请务必保留此出处http://liuxudong1001.blog.51cto.com/10877072/1785841
阅读全文
0 0
- 解决ListView中图标错乱显示的问题
- 探究Android中Listview显示错乱问题
- listview复用后数据错乱问题的解决
- ListView 数据错乱问题的解决(CheckBox)
- 关于ListView中checkBox错乱的问题
- 解决ListView上多选和单选界面上显示错乱的问题
- 解决ListView加载错乱问题
- 解决listview条目错乱问题
- ListView中CheckBox错乱解决
- Android ListView中设置的字体颜色显示错乱问题 && SparseArray<E>的使用
- 如何解决ListView中EditText的数据加载错乱的问题?
- 解决ListView的getView()方法中View设置监听position错乱的问题
- listview复用checkbox显示错乱解决demo
- listView 条目错乱的问题
- 解决ListView异步加载图片错乱问题
- 解决ListView异步加载图片错乱问题
- 解决ListView异步加载图片错乱问题
- 解决ListView异步加载图片错乱问题 .
- 用Dialog显示一个列表
- 移除界面上的一个view
- 1/1!+1/2!+1/3!+...+1\20!
- CentOS 7 安装docker
- 解决ListView的Item包含Button的点击冲突事件
- 解决ListView中图标错乱显示的问题
- ScrollView与HorizontalScrollView的用法
- React Native 触摸事件
- 使用ImageLoader来加载网络图片
- 进入Activity后让EditText自动弹出小键盘
- 如何给布局套上带颜色的边框
- 用WebView显示网页
- Android Studio添加包的BUG处理
- 检测手机号码是否合法(正则表达式)