作者热门文章
- r - 以节省内存的方式增长 data.frame
- ruby-on-rails - ruby/ruby on rails 内存泄漏检测
- android - 无法解析导入android.support.v7.app
- UNIX 域套接字与共享内存(映射文件)
我有一个 ListView
我正在调用 smoothScrollBy()
。 95% 的情况下,smoothScrollTo()
的行为符合预期。然而,有时它并没有出现在预期的位置!我已经验证我给它的值是一样的。我注意到当出现错误时平滑滚动不是那么平滑,但是我的应用程序正在执行的其他任务没有我可以控制的。
我不太确定后台发生了什么,但可能的罪魁祸首是垃圾收集。
在这种情况下,95% 的准确率还不够好。我将不得不实现某种修正机制,以确保 ListView
在这些情况下位于正确的位置。
除了简单地调用 view.smoothScrollBy(distance, time);
,还有没有更好的方法来使用 smoothScrollBy()
?
最佳答案
有时是因为时间问题。 View 何时添加到您的 ListView 以及您添加的时间
view.smoothScrollBy(distance, time);
ListView 或用户界面仍然不需要刷新。因此,请在具有特定延迟的 View 帖子线程中执行此操作。例如。
view.postDelayed(new Runnable{
view.smoothScrollBy(distance, time);
},1000);
关于Android smoothScrollBy 表现不佳,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7600312/
我是一名优秀的程序员,十分优秀!