本日學習:
透過 onBackPressed()、onSearchRequested()、onKeyDown() 事件
擷取 HOME,MENU,BACK & SEARCH Event
1. BACK 按鍵:透過 onBackPressed() 即可控制
@Override
public void onBackPressed() {
//顯示確認離開對話
new AlertDialog.Builder(MaintainStockOutInfo.this)
.setTitle("XX作業")
.setMessage("是否離開XX作業 ?")
.setPositiveButton("確認", new DialogInterface.OnClickListener(){
public void onClick(DialogInterface dialog, int which)
{
finish();
//super.onBackPressed();
}
})
.setNegativeButton("取消",new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which)
{
}
})
.show();
}
2. SEARCH 按鍵:透過 onSearchRequested() 即可控制
@Override
public boolean onSearchRequested() {
//super.onSearchRequested();
return false;
}
3. HOME、MENU 按鍵:透過 onAttachedToWindow()、 onKeyDown() 即可控制
(亦可控制 BACK、SEARCH 按鍵)
@Override
public void onAttachedToWindow() {
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
super.onAttachedToWindow();
}
public boolean onKeyDown(int keyCode, KeyEvent event) { if (keyCode == KeyEvent.KEYCODE_HOME || keyCode == KeyEvent.KEYCODE_MENU || keyCode == KeyEvent.KEYCODE_BACK || keyCode == KeyEvent.KEYCODE_SEARCH ) {
return true;
}
return super.onKeyDown(keyCode, event);
}