老套路先上效果图:
可以在临界点滑动的ViewPager,上图效果是;两个ViewPager,一个垂直一个水平滑动的,这次主要讲解临界点左右滑动,实际上很简单,只需要自定义ViewPager在事件分发中的分发事件中获取按下的坐标,然后在onTouch事件中的UP(抬起)事件中做相应的判断,记住一定要在抬起事件,不能在移动事件中,否则会调用多次。具体看代码:
package com.tm.live.ui.view;
import android.content.Context;
import android.support.v4.view.ViewPager;
import android.util.AttributeSet;
import android.view.MotionEvent;
/**
* @author xiayiye5
* 说明:监听在临界边界还继续左滑右滑监听的ViewPager
*/
public class LeftRightViewPager extends ViewPager {
/**
* 开始点击的位置
*/
private int startX;
/**
* 临界值
*/
private int criticalValue = 200;
/**
* 边界滑动回调
*/
public interface OnSideListener {
/**
* 左边界回调
*/