5

この質問に関する回答を 2 日間検索しましたが、見つかりませんでした。

画像を適切に表示するためにアクション バーを非表示にしようとしていますが、アクション バーを非表示/表示するたびに、アクティビティの下部に空白が表示されます。非表示/表示アクションバーイベントでウィンドウのサイズが変更されるために発生することはわかっていますが、これは Android のデフォルトのアニメーションでもありますが、その色 (黒色) を変更するか、この空白を表示しないようにする必要があります。しかし、どうすればそれができますか?

アクティビティの背景を黒に設定しようとしましたが、まだ機能していません。

例: USA Today アプリの「Day in pictures」セクションで行います。

どんな助けでも大歓迎です!

前もって感謝します。

4

3 に答える 3

0

このコードは私にとって魅力のように機能しました

// This snippet hides the system bars.
private void hideSystemUI() {
    // Set the IMMERSIVE flag.
    // Set the content to appear under the system bars so that the content
    // doesn't resize when the system bars hide and show.
    View decorView = getWindow().getDecorView();
    decorView.setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                    | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN
                    | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION // hide nav bar
                    | View.SYSTEM_UI_FLAG_FULLSCREEN // hide status bar
                    | View.SYSTEM_UI_FLAG_IMMERSIVE);
}

private void showSystemUI() {

    //make nav bar transparent
    Window window = getWindow();
    window.setFlags(WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION, WindowManager.LayoutParams.FLAG_TRANSLUCENT_NAVIGATION);

    View decorView = window.getDecorView();
    decorView.setSystemUiVisibility(
            View.SYSTEM_UI_FLAG_LAYOUT_STABLE
                    | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION
                    | View.SYSTEM_UI_FLAG_IMMERSIVE
                    | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN);
}
于 2015-03-27T13:00:11.703 に答える
-3

カラクリが提案することを行う必要はありません。アクション バーのすべてのメニュー項目を非表示にすると、バーが消えます。

于 2014-11-14T18:34:50.867 に答える