У меня есть прослушиватель touch touch для веб-просмотра, но он плохо влияет на функциональность веб-представления, поэтому мне интересно, есть ли способ удалить прослушиватель on touch после первоначального взаимодействия?
Есть ли способ удалить onTouchListener из объекта вида?
Ответ 1
Итак, в вашей деятельности вы установите свой переопределенный onTouchListener:
mWebView.setOnTouchListener(new View.OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent event) {
v.setOnTouchListener(mWebView.mOnTouchListener);
return false;
}
});
И вам нужно будет создать новый класс, расширяющий WebView. И внутри него вы определяете OnTouchListener.
public final OnTouchListener mOnTouchListener = new OnTouchListener() {
@Override
public boolean onTouch(View v, MotionEvent rawEvent) {
return false;
}
};
Установка ontouchlistener в значение null не означает reset его определение по умолчанию. Вы все равно должны предоставить фактического слушателя.
Ответ 2
webView.setOnTouchListener(null);
Ответ 3
Я искал помощь в Интернете и попал на этот пост. Когда я сделал
myView.setOnTouchListener(null);
my myView перестала отвечать на прикосновение.