public class CalendarEventView extends LinearLayout {
public CalendarEventView(Context context) {
super(context);
}
public CalendarEventView(Context context, AttributeSet attrs) {
super(context, attrs);
}
public CalendarEventView(Context context, AttributeSet attrs, int defStyleAttr) {
super(context, attrs, defStyleAttr);
}
@Override
public boolean onTouchEvent(MotionEvent event) {
super.onTouchEvent(event);
if((event.getAction() == MotionEvent.ACTION_DOWN || event.getAction() == MotionEvent.ACTION_UP) && event.getAction() != MotionEvent.ACTION_MOVE){
Log.v("move", "click");
return true;
}
return false;
}
}
我有 2 个同步的浏览器。一个包含 CalendarEventViews。在我将 onClick 和 onLongClick 添加到我的 CalendarEventView 之前,它们一直保持同步(我在 viewpager 中设置了这些侦听器)。
我的问题是我只能让点击工作或滚动工作,但不能同时工作。换句话说,我如何让我的 CalendarEventView 消耗点击,但让其父处理移动/滚动。
注意:我不介意 CalendarEventView 和父级(viewpager)是否都能够处理事件,只要它们都收到它。