单向滑动ViewPager
单向滑动ViewPager
咻咻咻咻 发表于2年前
单向滑动ViewPager
  • 发表于 2年前
  • 阅读 12
  • 收藏 0
  • 点赞 1
  • 评论 0

腾讯云实验室 1小时搭建人工智能应用,让技术更容易入门 免费体验 >>>   

public class SingleDirectionViewPager extends ViewPager {

    private Direction direction = Direction.BOTH;

    public SingleDirectionViewPager(Context context) {

        this(context, null);

    }

    public SingleDirectionViewPager(Context context, AttributeSet attrs) {

        super(context, attrs);

    }

    public void setDirection(Direction direction) {

        this.direction = direction;

    }

    private float x1 = 0.0f;

    private float x2 = 0.0f;

    @Override

    public boolean onTouchEvent(MotionEvent ev) {

        switch (ev.getAction()){

            case MotionEvent.ACTION_DOWN:

                x1 = ev.getX();

                break;

            case MotionEvent.ACTION_MOVE:

                x2 = ev.getX();

                break;

            case MotionEvent.ACTION_UP:

                x2 = ev.getX();

                break;

        }

        if(direction == Direction.LEFT){

            if(x2-x1<0){

                return true;

            }

        }

        if(direction == Direction.RIGHT){

            if(x2-x1>0){

                return true;

            }

        }

        return super.onTouchEvent(ev);

    }

    public enum Direction{

        LEFT,RIGHT,BOTH

    }

}

共有 人打赏支持
粉丝 2
博文 12
码字总数 4169
×
咻咻咻咻
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: