Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/209.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/csharp-4.0/2.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
Android 是否有任何类结合了ScaleGetStereDetector和GestureDetector的功能?_Android_Android Gesture - Fatal编程技术网

Android 是否有任何类结合了ScaleGetStereDetector和GestureDetector的功能?

Android 是否有任何类结合了ScaleGetStereDetector和GestureDetector的功能?,android,android-gesture,Android,Android Gesture,大家好, 是否有任何类结合了ScaleGetStereDetector和GestureDetector的功能? 我正在为onTouchEvent使用下面的代码,但只有一个手势类正在运行。如果我想使用GestureDetector和ScaleGestureDetector的所有功能 @Override public boolean onTouchEvent(MotionEvent ev) { if (mScaleDetector.onTouchEvent(ev)

大家好,


是否有任何类结合了ScaleGetStereDetector和GestureDetector的功能? 我正在为onTouchEvent使用下面的代码,但只有一个手势类正在运行。如果我想使用GestureDetector和ScaleGestureDetector的所有功能

@Override
    public boolean onTouchEvent(MotionEvent ev) 
    {
        if (mScaleDetector.onTouchEvent(ev))
            return true;
        else if (mGestureDetector.onTouchEvent(ev))
            return true;
        else
            return false;}
其中,mScaleDetector是ScaleGestureDetector,mGestureDetector是GestureDetector



提前感谢我做了这样的事情

return mScaleDetector.onTouchEvent() && mGestureDetector.onTouchEvent(ev);
似乎有效。解释可能是,当您在它们之间执行布尔and时,它将处理这两个方法以获得要返回的结果

您的方法的问题可能是,当某个手势方法使用事件时,您可能忘记了返回true

希望这有帮助,
Mihai

您应该始终将
onTouchEvent
参数传递给两个检测器,否则手势检测可能会失控

此代码(假设您指的是mScaleDetector.onTouchEvent(ev))应该与OPs代码相同。如果左侧返回true,则&&运算符不执行右侧,这正是原始代码所做的。