Android之单方向滑动的Viewpager

前一阵子在项目中遇到一个很奇葩的需求,用户注册登录的页面是分成一张张卡片的,填完一张卡片的信息才能进入下一步。我首先想到的是ViewPager,ViewPager的每个页面用Fragment填充即可。但是之前使用的ViewPager的每一个页面的左右都是紧密相连的,两个页面之间没有间隙。好在终于找到了一个第三方库可以解决这个问题:

仿魅族BannerView

这是一个模仿魅族广告轮播的第三方库,两个页面之间可以设置间距,这正好解决了我的问题(关于这个库的用法大家可以上GitHub看作者的说明,这里就不赘述了)。但是别忘了ViewPager是可以滑动的,而用户在注册时的步骤可是有先后之分的,比如输入手机号码获取验证码通过之后,才能设置密码,此时就不能任由用户滑动页面,不然步骤就乱了套了。但是完全禁止ViewPager的滑动也不现实,因为用户想向右滑返回到上一页总不能不让他这么做吧?(别问我为什么不用返回按钮,设计如此……)。所以我们需要一个可以单方向滑动的ViewPager。好在这个也不算难实现,我们可以监听触摸事件来做到。用户在界面上左右滑动时,我们可以监听起始坐标值和手指滑动过程中的坐标值,如果滑动后的坐标值比起始坐标值大,那么此时就是向右滑动,可以响应;反之则不必响应:

        float beforeX;
        mzBannerView.getViewPager
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值