2014-10-10 81 views
0

我理解的ListView回收机制非常好,从How ListView's recycling mechanism works但我不明白一两件事,ListView的回收机制

如果我想改变列表行的高度,那么为什么只可动态进行设置高度的作品,

例如:

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

如果我定义XML列布局的高度也不会改变,它是如何回收机制有关?

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

+0

你能否提供一些例子,说明“设置xml的属性”不起作用?此外,你膨胀该特定项目的XML布局。 – Simas 2014-10-10 06:36:14

+0

@ user3249477对不起,这是我的错误,我试图以错误的方式夸大布局 – 2014-10-10 06:59:53

回答

1

我的理解,出现了一个小错误,我试图用充气

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

上面的代码是主要的原因,为什么XML属性没有工作的ListView布局。然后,我把它改成

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

现在它工作正常,抱歉,但回收机制无关使用XML,我失去了那里。