0

私のアプリケーションでは、ユーザーがホームボタンをクリックするとログイン画面が開きますが、アクティビティスタックも維持したいと考えています。

これを行う方法はありますか?

4

3 に答える 3

3

同じことを直接行う方法はありません。HOMEキーのKeyDownイベントを取得できないように。ただし、次のコードで HOME キーをキャプチャして同じ画面にとどまることができます

@Override
public void onAttachedToWindow() {
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD);

    super.onAttachedToWindow();
}
于 2011-11-25T08:22:54.107 に答える
0

実際には、ホームボタンにオーバーライドする必要があります:

@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
    if (keyCode == KeyEvent.KEYCODE_BACK) {

    Intent new(this, login);
    start(intent);
        return true;
    }
    return super.onKeyDown(keyCode, event);
}
于 2011-11-25T10:42:28.400 に答える
-5

セキュリティ上の理由から、ホーム ボタンのクリック イベントを確実にキャプチャすることはできません。

ただし、メソッドをオーバーライドすることで、ホームボタンを押したときに実行されるアクションと一緒に何かを行うことができますonNewIntent()

于 2011-11-25T08:22:10.027 に答える