正如标题所说,我的listview存在这个问题。我没有使用任何普通的listview,我使用基于listview的可观察的scrollview库。
首先,我想澄清一些让你们更清晰的事情。
在我使用listview的自定义适配器布局更改了一些内容之前,我没有遇到此问题。
这看起来很奇怪,因为我之前没有遇到过这个问题。
它以不正常的速度滚动,我只是一掷千金它突然撞到了底部。
慢慢滚动并不会导致问题
我应该放慢我的列表视图并尝试,如果是这样的话?
我在滚动时加载了更多项目,我也有一个页脚视图,并且页脚视图只停留一秒或更短时间。
答案 0 :(得分:3)
这也可能是由Android 5.1中的错误引起的。 The bug report can be found here。 ListView上的两次快速滑动导致它点击列表的顶部,然后立即滚动到底部。
目前唯一的解决方案似乎是使用ScrollView而不是ListView。
答案 1 :(得分:0)
在getView
方法中,您有
inflater = (LayoutInflater) context
.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.custom, parent, false);
替换为
if (convertView == null) {
inflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
View v = inflater.inflate(R.layout.custom, parent, false);
}
而且,它会好得多。
顺便说一下,ViewHolder is not so hard。如果这不起作用,您有正确实现ViewHolder。还要避免在getView
中做太多的事情,并确保异步加载图像(大多数imageLoader库都会为你做这个)