0

次のコードを使用して通知バーを無効にしました

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);

次のコードを使用してホームボタンを無効にしました

@Override
public void onAttachedToWindow()
{  
    this.getWindow().setType(WindowManager.LayoutParams.TYPE_KEYGUARD_DIALOG);     
    super.onAttachedToWindow();  
}

しかし、上記のコードを使用してホームボタンを無効にすると、通知が一番上に表示されます。
誰かがこれらの両方を達成する方法を教えてもらえますか?

4

3 に答える 3

1

onCreate()呼び出す前に、このコードをメソッドに追加してくださいsetContentView()

this.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
于 2012-08-05T11:54:11.960 に答える
0

使用する

<activity
    android:label="@string/app_name"
    android:name=".MyActivity"
    android:theme="@android:style/Theme.NoTitleBar.Fullscreen" />

代わりは

getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
getWindow().clearFlags(WindowManager.LayoutParams.FLAG_FORCE_NOT_FULLSCREEN);
于 2012-07-06T08:52:15.763 に答える
0

onKeyDown コールバックを介して HOME ボタンをインターセプトし、適切なアクションを実行できますが、それが機能するかどうかはわかりません。自分で試しませんでした。

@Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        if (keyCode == KeyEvent.KEYCODE_HOME) {
            // Do nothing, or everything else you want to do when the HOME is pressed.
            return true;
        }
        return super.onKeyDown(keyCode, event);
    }
于 2012-07-06T08:18:06.027 に答える