У меня есть два плейера с представлением, один вложен в другой. Чтобы получить правильное поведение (прокручивая плейер внутреннего вида без изменения внешнего), мне пришлось переопределить пейджеры внутреннего вида onTouchListener
и поместить в него всю мою логику onTouch/onClick (получена идея от here).Получение эффекта пульсации/селектора без интерактивного макета
Работает отлично, но поскольку у меня нет onClickListener
, я потерял эффект селектора. Когда я помещаю android:clickable="true"
в элемент макета, я получаю эффект селектора, но поведение пейджеров в представлении неверно.
Есть ли способ добиться эффекта селектора из onTouchListener
?
innerPager.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
if (gestureDetector.onTouchEvent(event)) {
Log.d(DEBUG_LOG, "Single tap.");
return true;
} else if(event.getAction() == MotionEvent.ACTION_DOWN && v instanceof ViewGroup) {
((ViewGroup) v).requestDisallowInterceptTouchEvent(true);
}
return false;
}
});