2013-12-15 1 views
3

У меня есть HSV, и я бы хотел ответить на этот длинный клик. Когда я устанавливаю его onLongClickListener(), он не делает много, обратный вызов не вызывается.Горизонтальная прокрутка Показывает длинное нажатие

Я предполагаю, что вид прокрутки потребляет все с помощью onTouch, чтобы он мог обрабатывать прокрутку, но как мне его обойти?

ответ

4

Вы можете сделать это с помощью 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); 
    } 
}); 
+0

Работает как очарование, спасибо! – aviran

Смежные вопросы