【发布时间】:2017-12-05 09:57:21
【问题描述】:
我有RecyclerView 并使用支持库中的ViewPager 和BottomNavigationView。 RecyclerView 为漂亮和舒适的滚动有PagerSnapHelper。
我遇到了可怕而奇怪的问题:
当我的BottomNavigationView 的听众在方法onNavigationItemSelected 中捕获新位置时,我会这样做:
override fun onNavigationItemSelected(item: MenuItem): Boolean {
var newPos = -1
//little code for checked only a NEW position, the same values ignored
recycler.smoothScrollToPosition(currentPos) //values 0, 1 and 2
return true
}
当我 smoothScrollToPosition 和 currentPos = 0 回收器滚动到第一个位置 (0) 时非常慢(与其他相比
)。调用方法 smoothScrollToPosition 和 onScrollStateChanged 之间的时间(对于参数 newState = RecyclerView.SCROLL_STATE_IDLE 的回收器视图滚动侦听器),值 1 和 2 非常小,值 = 0 大约一秒(!)
为什么会发生这种情况,我该如何解决?
【问题讨论】:
标签: android android-recyclerview bottomnavigationview