У меня есть список с OnItemClickListener и OnItemLongClickListener.
В методе getView моего listadapter я устанавливаю представление с TransitionDrawable в качестве фона, затем я применяю к представлению OnTouchListener, чтобы, когда пользователь нажимает на представление и удерживает его, он видел, как происходит переход.
Проблема в том, что OnTouchListener должен возвращать true, иначе будет захвачено только событие движения ACTION_DOWN. Но, возвращая true, мои OnItemClickListener и OnItemLongClickListener не срабатывают.
Вопрос в том, как я могу показать анимацию TransitionDrawable И запустить события щелчка?
getView(..) адаптера массива:
@Override
public View getView(int position, View convertView, ViewGroup parent) {
...
convertView.setOnTouchListener(touchListener);
return convertView;
}
OnTouchListener:
OnTouchListener touchListener = new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
TransitionDrawable transition = (TransitionDrawable)v.getBackground();
if(event.getAction() == MotionEvent.ACTION_DOWN) {
transition.startTransition(ViewConfiguration.getLongPressTimeout());
return true;
}
else {
transition.resetTransition();
}
return false;
}
};