在页面滚动

时间:2016-06-23 10:07:21

标签: java android android-viewpager

我的ViewPager有5个页面(我尝试重复使用),它的自定义PagerAdapter有一个带视图的支持数组,我最初在启动时添加(膨胀)它们,将当前页面设置为中间页面:

0 1 |2| 3 4

现在,在页面滚动时,我重新使用数组另一端的一个视图,用新数据填充它(基于日历日期) - 我在数组中取最后一个视图并将其移动到开头,反之亦然,具体取决于滚动方向。然后我用新数据填充它。

Reusing views:
4 0 |1| 2 3 or 
1 2 |3| 4 0 and so on ...

我在onPageSelected的{​​{1}}移动并更新可重复使用的页面(此处为4或0),这会导致短暂的滚动动画因为耗时的例程而冻结。

这就是为什么我决定在单独的线程中执行所有慢速代码然后在调用View ViewPager.OnPageChangeListener方法的页面中填充子视图的原因。好吧,它现在工作得更快,但无论如何都会出现一点冻结。

问题是,如何正确优化/实施此类场景以实现平滑的动态分页?

0 个答案:

没有答案