可能是因为 ViewPager 实例使用了默认的切换动画,而 Accompanist 又尝试添加自己的动画效果,导致出现延迟。解决方法是手动禁用默认的 ViewPager 动画,例如:
val viewPager = rememberViewPagerState(pageCount = 3)
HorizontalPager(state = viewPager, dragEnabled = true) {
// content here
}.apply {
// disable default transition animation
this.setPageTransformer(false, null)
}
在 Accompanist 2.1.0 及以上版本中,你还可以直接在 HorizontalPager
构造函数中禁用动画:
HorizontalPager(state = viewPager, dragEnabled = true, pageTransition = null) {
// content here
}