スタックオーバーフローの回答から、ホームボタンをオーバーライドできることがわかりましたか? しかし、ビデオの再生中にすべてのボタンをロックできる「Mxplayer」という Android マーケットのアプリケーションを見つけました。彼らはこれをどのように行っていますか?Androidでホームボタンをオーバーライドできますか?
質問する
10005 次
2 に答える
12
このソリューションは 2.3 まで機能します。
アクティビティで以下のメソッドをオーバーライドし、
@Override
public void onAttachedToWindow() {
super.onAttachedToWindow();
this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);
}
そして、キーイベントを次のように処理します。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if(keyCode == KeyEvent.KEYCODE_HOME)
{
Log.i("Home Button","Clicked");
}
if(keyCode==KeyEvent.KEYCODE_BACK)
{
finish();
}
return false;
};
于 2012-05-30T04:40:34.550 に答える
-1
はい、できます。次のコードを使用します。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
if ((keyCode == KeyEvent.KEYCODE_HOME)) {
//do nothing
return true;
}
return super.onKeyDown(keyCode, event);
}
于 2012-05-30T04:38:20.907 に答える