Android自定义ViewPager禁止横向滑动

自定义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)
    }

}

猜你喜欢

转载自blog.csdn.net/adayabetter/article/details/129188922