Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/194.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 水平滚动视图检测长按_Android_Horizontalscrollview_Android Scrollview - Fatal编程技术网

Android 水平滚动视图检测长按

Android 水平滚动视图检测长按,android,horizontalscrollview,android-scrollview,Android,Horizontalscrollview,Android Scrollview,我有一辆HSV,我想对长时间点击该视图做出回应。当我将它设置为onLongClickListener()时,它没有做很多事情,回调没有被调用 我假设滚动视图使用一个onTouch来消耗所有内容,因此它可以处理滚动,但是我如何处理它呢?您可以使用GestureDetector来实现这一点。这项工作: GestureDetector.OnGestureListener listener = new GestureDetector.SimpleOnGestureListener() { @Ov

我有一辆HSV,我想对长时间点击该视图做出回应。当我将它设置为
onLongClickListener()
时,它没有做很多事情,回调没有被调用


我假设滚动视图使用一个
onTouch
来消耗所有内容,因此它可以处理滚动,但是我如何处理它呢?

您可以使用GestureDetector来实现这一点。这项工作:

GestureDetector.OnGestureListener listener = new GestureDetector.SimpleOnGestureListener() {
    @Override
    public void onLongPress(MotionEvent e)
    {
        Toast.makeText(TestXmlActivity.this, "LongClick", Toast.LENGTH_SHORT).show();
    }
};

final GestureDetector gestureDetector = new GestureDetector(this, listener);

horizontalScrollView.setOnTouchListener(new View.OnTouchListener() {
    @Override
    public boolean onTouch(View v, MotionEvent event)
    {
        return gestureDetector.onTouchEvent(event);
    }
});