My ActionBar будет вызываться, нажав кнопку «Меню», как это. и он работает нормальноПочему он не обнаружит onTouch?
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_MENU){
if (mActionBar.isShowing()) {
mActionBar.hide();
}
else {
mActionBar.show();
}
}else if(keyCode == KeyEvent.KEYCODE_BACK){
WebView myWebView = (WebView)findViewById(R.id.webView1);
myWebView.goBack();
}
return true;
}
Когда пользователь прикасается к экрану, пока отображается ActionBar, ActionBar должен исчезнуть.
Но он не обнаружит событие onTouch. Зачем?
public boolean onTouch(View view, MotionEvent event) {
switch(event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
if (mActionBar.isShowing()) {
mActionBar.hide();
}
case MotionEvent.ACTION_UP:
break;
case MotionEvent.ACTION_POINTER_UP:
break;
}
return true;
}
UPDATE:
View.OnTouchListener mDelayHideTouchListener = new View.OnTouchListener(){
public boolean onTouch(View view, MotionEvent event) {
switch(event.getAction() & MotionEvent.ACTION_MASK) {
case MotionEvent.ACTION_DOWN:
if (mActionBar.isShowing()) {
mActionBar.hide();
}
case MotionEvent.ACTION_UP:
break;
case MotionEvent.ACTION_POINTER_UP:
break;
}
return true;
}
};
это еще не будет работать :(
вы установите слушателя – androidu
setOnTouchListener (это) – androidu
@ MarciCăşvan Спасибо, но как? – HUSTEN