初学Android,工程开发中经常需要用到Listview组件,吃了不少关于页面显示异常的亏
诸如:
当每条布局文件并不一致的时候,上下两条item布局显示混杂,窜样{上面item的布局式样包含下面的布局式样}
每条item的显示顺序被打乱了,【1-2-3-4】可能变成了【2-3-4-1】
当每条布局文件并不一致的时候,可能下面图片的内容跑到上面的item中去了
就不多说什么了,直接上干货,请看【//】注释部分
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
//每次都上getView去重新绘制
//虽然损失了部分性能,但是问题得到了解决
// if (convertView == null) {
convertView = LayoutInflater.from(mContext).inflate(
R.layout.adapter_circle_msg_item, null);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
// } else {
// holder = (ViewHolder) convertView.getTag();
// }
CircleMsgItemInfo info = mInfos.get(position);
holder.fillViewWithData(info);
return convertView;
}