GestureDetector не работает для Android PdfViewer lib - PullRequest
0 голосов
/ 22 января 2020

GestureDetector работает нормально, когда я нажимаю на пустой экран активности, но не работает, когда я нажимаю на Android pdfViewer (имеется в виду документ PDF) .... Пожалуйста, помогите мне, как это сделать.

GestureDetector gestureDetector = new GestureDetector(this, new GestureDetector.SimpleOnGestureListener() {

        @Override
        public boolean onSingleTapUp(MotionEvent e) {
            //------------------apply your logic here------------
            return super.onSingleTapUp(e);
        }

        @Override
        public boolean onSingleTapConfirmed(MotionEvent e) {
            return super.onSingleTapConfirmed(e);
        }
    });      

@Override
public boolean onTouchEvent(MotionEvent event) {
    gestureDetector.onTouchEvent(event);
    return super.onTouchEvent(event);
}

Документ, открытый в Android PdfViewer

<com.github.barteksc.pdfviewer.PDFView
        android:id="@+id/pdfView"
        android:layout_width="200dp"
        android:layout_height="200dp" />

, когда я щелкаю вне открытого, делаю c GestureDetector работает нормально, но когда я нажимаю на PDF-документ, GestureDetector не срабатывает.

1 Ответ

0 голосов
/ 23 января 2020

Получил ответ от Abhay Koradiya ,

Была проблема onTouchEvent, которая не вызывалась, если pdfviewer присоединен => Это произошло, потому что pdfviewer уже использовал событие касания.

Так что вам нужно вместо этого использовать

dispatchTouchEvent

. отметьте здесь

@Override
public boolean dispatchTouchEvent(MotionEvent event) {
    gestureDetector.onTouchEvent(event);
    return super.dispatchTouchEvent(event);
}
...