我对listview有些问题。我的列表确实有不同的单元格高度,其中一些甚至比屏幕的高度还要大。我发现,listview滚动内插器在计算惯性方面存在问题。每当当前切换到可见区域的两个单元格之间存在较大的高度差异时,滚动的轮子......我已经查看了traceview,实际上并没有那么多的延迟。 (没有行高,然后16ms的阈值,虽然有明显的差异),这意味着它实际上不是垃圾,它只是快速加速和减速滚动速度。 (它与滚动条高度变化的时间完全相同) 有人知道如何解决这个问题吗?我从facebook上读过一篇文章,他们显然也遇到了同样的问题。有人写过他们需要写自己的项目回收者。我有点意识到这一点,并希望看到一些更简单的解决方案.. 很抱歉这个问题太抽象了,但我猜任何代码都没有必要.. 谢谢你的帮助......
答案 0 :(得分:1)
ListViews回收,已经膨胀的视图。因为在您的情况下,Listview的物品高度不同,所以最好编写自己的回收商。
如果您具有X,Y和Z中的特定类别,则可以通过向布局添加属性作为标记来检查布局类型,并有条件地进行膨胀。但最好的方法是编写自己的回收商。