ContextMenu и ontouchListener для Android - PullRequest
1 голос
/ 03 января 2012

Я занимаюсь разработкой приложения, в котором в определенной деятельности у меня есть кнопка, которую я хочу перетащить (для этого я использую onTouchListener), но в противном случае я хочу, чтобы у кнопки было контекстное меню (нажмите долгое время) ... Но кажется, что существует конфликт между двумя вариантами, потому что, если я поставлю два варианта, то работает только onTouchListener ...

Есть ли возможность использовать два варианта?

Спасибо!

1 Ответ

0 голосов
/ 06 февраля 2015

Вот решение для меня:

    final GestureDetector gestureDetector = new GestureDetector(context,new GestureDetector.SimpleOnGestureListener() {
        public void onLongPress(MotionEvent e) {
            Log.i(TAG, "Longpress detected");
        }
    });

    button.setOnTouchListener(new View.OnTouchListener() {          
        @Override
        public boolean onTouch(View view, MotionEvent event) {
              switch (event.getAction()) {
                     case MotionEvent.ACTION_DOWN:
                           //Whatever you do
                           return gestureDetector.onTouchEvent(event);
                     case MotionEvent.ACTION_UP:
                           //Whatever you do
                           return false;
                     default:
                           break;
               }
               return false;
       }
    });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...