В моем проекте используется onTouchEvent для обнаружения касания на экране и выполнения соответствующих действий, а также используется viewPager для пролистывания. Проблема заключается в том, что при пролистывании выполняются сенсорные действия. поэтому найдите решение из здесь решил его. Но моя новая проблема заключается в том, что сенсор отключается после выполнения TouchEvent.Action_up. код выглядит следующим образом:
parent.setOnTouchListener(new OnTouchListener() {
public boolean onTouch(View v, MotionEvent event) {
switch(event.getAction())
{
case MotionEvent.ACTION_MOVE:
awesomePager.requestDisallowInterceptTouchEvent(true);
break;
case MotionEvent.ACTION_UP:
awesomePager.requestDisallowInterceptTouchEvent(true);
if(flag)
{
upperdock.setClickable(false);
upperdock.bringToFront();
tocparent.bringToFront();
tocbottom.bringToFront();
upperdock.setVisibility(RelativeLayout.VISIBLE);
tocparent.setVisibility(LinearLayout.VISIBLE);
tocbottom.setVisibility(LinearLayout.VISIBLE);
flag=false;
}
else
{
parent.bringToFront();
upperdock.setVisibility(RelativeLayout.INVISIBLE);
tocparent.setVisibility(LinearLayout.INVISIBLE);
tocbottom.setVisibility(LinearLayout.INVISIBLE);
flag=true;
}
break;
case MotionEvent.ACTION_CANCEL:
awesomePager.requestDisallowInterceptTouchEvent(false);
break;
default:
break;
}
return false;
}
});
В приведенном выше коде, если я возвращаю false, Action_up не выполняется.. если я возвращаю true, Action_cancel не выполняется.. проблема заключается в передаче по значению.