最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ViewPager和SlidingPaneLayout的滑動(dòng)事件沖突解決方法

 更新時(shí)間:2018年01月02日 08:55:38   作者:Homilier  
下面小編就為大家分享一篇ViewPager和SlidingPaneLayout的滑動(dòng)事件沖突解決方法,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧

問(wèn)題描述:

ViewPager和SlidingPaneLayout的滑動(dòng)事件沖突。

問(wèn)題分析:

在手指左右滑動(dòng)時(shí),SlidingPaneLayout會(huì)屏蔽ViewPager的滑動(dòng)事件。

解決辦法:

自定義SlidingPaneLayout類

import android.content.Context;
import android.support.v4.view.MotionEventCompat;
import android.support.v4.widget.SlidingPaneLayout;
import android.util.AttributeSet;
import android.view.MotionEvent;
import android.view.ViewConfiguration;

public class PagerEnabledSlidingPaneLayout extends SlidingPaneLayout {

  private float mInitialMotionX;
  private float mInitialMotionY;
  private float mEdgeSlop;

  public PagerEnabledSlidingPaneLayout(Context context) {
    this(context, null);
  }

public PagerEnabledSlidingPaneLayout(Context context, 
AttributeSet attrs) {
    this(context, attrs, 0);
  }

public PagerEnabledSlidingPaneLayout(Context context, 
AttributeSet attrs, int defStyle) {
    super(context, attrs, defStyle);

    ViewConfiguration config = ViewConfiguration.get(context);
    mEdgeSlop = config.getScaledEdgeSlop();
  }

  @Override
  public boolean onInterceptTouchEvent(MotionEvent ev) {

    switch (MotionEventCompat.getActionMasked(ev)) {
      case MotionEvent.ACTION_DOWN: {
        mInitialMotionX = ev.getX();
        mInitialMotionY = ev.getY();
        break;
      }

      case MotionEvent.ACTION_MOVE: {
        final float x = ev.getX();
        final float y = ev.getY();
        if (mInitialMotionX > mEdgeSlop && !isOpen() && canScroll(this, false,
            Math.round(x - mInitialMotionX), Math.round(x), Math.round(y))) { 
          MotionEvent cancelEvent = MotionEvent.obtain(ev);
          cancelEvent.setAction(MotionEvent.ACTION_CANCEL);
          return super.onInterceptTouchEvent(cancelEvent);
        }
      }
    }
    return super.onInterceptTouchEvent(ev);
  }
}

以上這篇ViewPager和SlidingPaneLayout的滑動(dòng)事件沖突解決方法就是小編分享給大家的全部?jī)?nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。

相關(guān)文章

最新評(píng)論

鄂托克前旗| 浠水县| 车险| 门头沟区| 宣恩县| 商都县| 六枝特区| 来宾市| 常州市| 福清市| 克拉玛依市| 太仆寺旗| 五寨县| 江城| 昆山市| 乾安县| 鹤岗市| 宜丰县| 福安市| 无棣县| 昭通市| 科技| 克什克腾旗| 巴彦县| 祁阳县| 阳西县| 兰州市| 广州市| 饶河县| 台中县| 鄂尔多斯市| 顺义区| 玉林市| 双辽市| 伊通| 社会| 蓝山县| 林西县| 凤翔县| 浦城县| 武胜县|