Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/235.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 将滑动面板布局的触摸事件限制在屏幕最左侧边缘_Java_Android_Slidingpanelayout - Fatal编程技术网

Java 将滑动面板布局的触摸事件限制在屏幕最左侧边缘

Java 将滑动面板布局的触摸事件限制在屏幕最左侧边缘,java,android,slidingpanelayout,Java,Android,Slidingpanelayout,是否可以将滑动面板布局的触摸事件限制在抽屉布局中发生的屏幕链接的最左侧边缘?是的,但您希望创建自己的滑动面板布局实现并覆盖onTouchEvent(MotionEvent ev)方法,如下所示 public class SlidingPaneLayoutExtended extends SlidingPaneLayout { public static final int DEFAULT_DRAGGING_START_X = -1; public static final int SLIDE_

是否可以将滑动面板布局的触摸事件限制在抽屉布局中发生的屏幕链接的最左侧边缘?

是的,但您希望创建自己的滑动面板布局实现并覆盖onTouchEvent(MotionEvent ev)方法,如下所示

public class SlidingPaneLayoutExtended extends SlidingPaneLayout {

public static final int DEFAULT_DRAGGING_START_X = -1;
public static final int SLIDE_FROM_LEFT_EDGE = 0;

private int startDraggingX = DEFAULT_DRAGGING_START_X;

public SlidingPaneLayoutExtended(Context context, AttributeSet attrs) {
    super(context, attrs);
}


public int getStartDraggingX() {
    return startDraggingX;
}

public void setStartDraggingX(int startX) {
    this.startDraggingX = startX;
}

@Override
public boolean onTouchEvent(MotionEvent ev) {

    if (startDraggingX > DEFAULT_DRAGGING_START_X) {
        if ((startDraggingX == SLIDE_FROM_LEFT_EDGE && ev.getAction() == )
                || ev.getX() <= DEFAULT_DRAGGING_START_X) {
            return super.onTouchEvent(ev);
        } else {
            return false;
        }
    }

    return super.onTouchEvent(ev);
}
}
public类SlidingPaneLayoutExtended扩展SlidingPaneLayout{
公共静态final int DEFAULT\u drawing\u START\u X=-1;
从左边缘开始的公共静态最终整数幻灯片=0;
private int startDraggingX=默认值\u拖动\u开始\u X;
public slidengpanelayoutextended(上下文上下文、属性集属性){
超级(上下文,attrs);
}
public int getStartDraggingX(){
返回startDraggingX;
}
公共无效设置起始日期(int STARTTX){
this.startDraggingX=startX;
}
@凌驾
公共事件(MotionEvent ev){
如果(开始拖动>默认值\u拖动\u开始\u X){
如果((startDraggingX==从左边缘滑动(&&ev.getAction()==)
||ev.getX()