[英]Android smoothScrollBy behaving badly
我有一个ListView
,我正在调用smoothScrollBy()
。 95%的时候, smoothScrollTo()
按预期运行。 然而,有时它不会在预定的位置结束! 我已经证实我给它的价值相同。 我注意到,当出现错误时,平滑滚动不是那么顺利,但是我的应用程序没有其他任务可以控制。
我不太确定后台发生了什么,但可能的罪魁祸首是垃圾收集。
在这种情况下,95%的准确度不够好。 我将不得不实现某种纠正机制,以确保ListView
落在这些实例中的正确位置。
除了简单地调用view.smoothScrollBy(distance, time);
还有更好的方法来使用smoothScrollBy()
view.smoothScrollBy(distance, time);
?
尝试其中一些:
Listview有自己的滚动机制。 它在添加内容时滚动。
将listview height(android:layout_height)分配给match_parent或fill_parent。
如果您在工作线程中分配适配器。 不要在线程中执行任何UI操作。
如果这些都没有解决问题。 请将您将适配器分配到列表视图的代码(如果有)。 或相关代码。
还有xml布局代码。
希望这可以帮助。
有时候会因为时间问题。 将视图添加到列表视图中并将时间添加到列表视图中
view.smoothScrollBy(distance, time);
listview或ui仍然不需要刷新。 所以在具有特定延迟的视图帖子中执行此操作。 例如。
view.postDelayed(new Runnable{
view.smoothScrollBy(distance, time);
},1000);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.