Android ListView getView多次不规律调用问题

来源:互联网 发布:als矩阵分析 编辑:程序博客网 时间:2024/04/29 02:28

今天偶然发现ListView的getView方法会执行多次,一共只有3个Item,getView却调用了n次,代码如下

<span style="white-space:pre"></span>@Overridepublic View getView(int position, View convertView, ViewGroup parent) {System.out.println("-->>getView:"+position+" "+convertView);if(convertView==null){mItemView=new ListItemView();convertView=mInflater.inflate(mItemResourceId, null);mItemView.txtName= (TextView)convertView.findViewById(R.id.txt);mItemView.img=(ImageView) convertView.findViewById(R.id.item_img);convertView.setTag(mItemView);}else{mItemView=(ListItemView)convertView.getTag();}String str=mDataItems.get(position);mItemView.txtName.setText(str);return convertView;}
打印出来的日志如图

很奇怪为什么不只打印三次,而是每一项都进行了多次重绘,经过多番调试,仍未解决,于是上网查了下,

网上说是ListView高度不固定造成的,仔细想想还真是,便把ListView高度设为固定,还真成功了,如下图,

没有出现打印多次这种情况了。


0 0
原创粉丝点击