Android smoothScrollBy 表现不佳

标签 android listview scroll

我有一个 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/

相关文章:

android - 约束布局不对齐 TextView

android - 我们可以用另一个按钮启动一个按钮吗

android - 不推荐使用 getAdapterPosition()

android - 如何在android ListView 中设置背景图片?

android - 如何在Android中更新和添加项目到ListView的特定位置?

javascript - 在较小的设备上滚动非常跳跃

java - 检查列表是否已更改

java - 错误: java. lang.ClassCastException : android. view.View无法转换为android.view.ViewGroup

scroll - Polymer 1.0 的无限滚动(无附加)

jquery - 使用 anchor 创建平滑滚动