自定义ViewPager,复写 canScrollHorizontally 方法,禁止横向滑动。
class CustomViewPager : ViewPager{
private var isCanScroll: Boolean = true
constructor(context: Context) : super(context)
constructor(context: Context, attrs: AttributeSet) : super(context, attrs)
/**
* isNewTabStyle 为true,新首页场景,开关控制是否滑动,默认不能滑动
* 老版本支持滑动
*/
fun setIsNewTabStyle(isNewTabStyle: Boolean) {
val canScrollOrange = SPUtil.getBoolean("feed_tab_scroll_enabled", false)
if (isNewTabStyle) {
isCanScroll = canScrollOrange
} else {
isCanScroll = true
}
}
//复写该方法,控制是否支持横滑,false 不支持横滑
override fun canScrollHorizontally(direction: kotlin.Int): kotlin.Boolean {
if (!isCanScroll) {
return false
}
return super.canScrollHorizontally(direction)
}
}