2013年8月9日金曜日

ホームボタンとバックボタンのイベント

ホームキーイベントはonUserLeaveHintで画面遷移を検知する方法があります。
電話着信時はonUserLeaveHintは発生しません。

戻るボタンはdispatchKeyEventまたはその他キーイベントで検知できます。

ホームボタンを無効にはできません。
しかし、システムオーバーレイやonUserLeaveHintからの再表示などで画面を遷移させないように見せることは可能です。


@Override
public void onUserLeaveHint() {
// ホームボタンが押された時

}

@Override
public boolean dispatchKeyEvent(KeyEvent event) {
if (event.getAction() == KeyEvent.ACTION_DOWN) {
// バックボタンが押されたとき
if (event.getKeyCode() == KeyEvent.KEYCODE_BACK) {

return true;// 無効
}
}
return super.dispatchKeyEvent(event);
}

0 件のコメント:

コメントを投稿