ListView回收机制

时间:2014-10-10 06:30:12

标签: android listview android-listview

我从How ListView's recycling mechanism works非常了解ListView回收机制,但我不了解一件事,

如果我想更改列表行的高度,那么为什么它只能通过动态设置高度来工作,

例如:

convertView.setLayoutParams(new AbsListView.LayoutParams(AbsListView.LayoutParams.FILL_PARENT,80));  

如果我在xml中定义行布局的高度,它不会改变,它与循环机制有什么关系?

不仅列表行高度我已经看到很多情况下xml的属性不起作用但是动态地改变它们效果很好,但是如何?

1 个答案:

答案 0 :(得分:1)

我明白了,我试图使用

来扩展listview布局时出现了一个小错误
convertView = mInflater.inflate(R.layout.drawer_list_item, null,false);  

上面的代码是主要原因,为什么xml的属性不起作用。然后我把它改成了

convertView = mInflater.inflate(R.layout.drawer_list_item, parent,false);  

现在它正在按预期工作,对不起但回收机制与xml无关,我在那里丢失了。