【简释】ViewPager——OnPageChangeListener

ViewPager.SimpleOnPageChangeListener mPageChangeListener = new ViewPager.SimpleOnPageChangeListener() {
    /**
     * 当页面滚动时触发
     * @param position 切换过程中左侧页面的position
     * @param positionOffset 切换过程中左侧页面消失部分的比例
     * @param positionOffsetPixels 切换过程中左侧页面消失部分的像素值
     */
    @Override
    public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
        super.onPageScrolled(position, positionOffset, positionOffsetPixels);
        Log.d(TAG, "position: " + position);
        Log.d(TAG, "positionOffset: " + positionOffset);
        Log.d(TAG, "positionOffsetPixels: " + positionOffsetPixels);
    }

    /**
     * 页面发生变化后触发
     * @param position 切换后页面的position
     */
    @Override
    public void onPageSelected(int position) {
        super.onPageSelected(position);
        Log.d(TAG, "onPageSelected: " + position);
    }

    /**
     * 滚动的状态
     * @param state 0,1,2
     * 1:滑动
     * 2:恢复
     * 0:结束
     * 例:假设ViewPager为横向滚动
     * 无反应:手指垂直放置垂直拿开(单击/长按);手指进行上下方向的滑动
     * 1,2,0:ViewPager进行了左右方向的滑动,手指离开后的页面存在水平偏差,导致页面回正
     * 1,0:ViewPager进行了左右方向的滑动,但手指离开后页面刚好是正确位置无须回正(一般为边角界面向外滑动后的结果)
     */
    @Override
    public void onPageScrollStateChanged(int state) {
        super.onPageScrollStateChanged(state);
        Log.d(TAG, "onPageScrollStateChanged: " + state);
    }
};
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值