Android App全屏

时间:2014-09-20 19:48:40

标签: android android-layout fullscreen android-fullscreen

我是一名初级Android开发人员,我面临的一个问题是如何让我的应用程序全屏显示。 我用过:

"android:theme=”@android:style/Theme.NoTitleBar.Fullscreen"

但它实际上只是删除了状态和操作栏,但它保留了导航栏。 我尝试了各种不同的方法,但没有任何成功,但我知道可能,因为我有很多应用程序没有像Subway Surfers那样显示导航栏。

制作它的正确方法是什么?

4 个答案:

答案 0 :(得分:1)

将以下代码添加到您的活动中:

public class YourActivity extends Activity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);

        requestWindowFeature(Window.FEATURE_NO_TITLE);
        getWindow().setFlags(
            WindowManager.LayoutParams.FLAG_FULLSCREEN,
            WindowManager.LayoutParams.FLAG_FULLSCREEN);

        setContentView(R.layout.your_layout);
        ...
    }
}

p.s。:

将以下内容添加到onResume()方法中:

int uiOptions = View.SYSTEM_UI_FLAG_HIDE_NAVIGATION
              | View.SYSTEM_UI_FLAG_FULLSCREEN;

View decorView = getWindow().getDecorView();
decorView.setSystemUiVisibility(uiOptions);

请注意,在所有情况下都无法删除导航栏(请参阅docs:“它不会隐藏平板电脑上的系统栏”)。从4.4开始,您可以启用Immersive Mode。查看与Android 3.0设备相关的this post(“您无法在Android 3.0上隐藏系统栏。”)。

答案 1 :(得分:0)

// Erase the title bar
requestWindowFeature(Window.FEATURE_NO_TITLE);
// Make it full Screen
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);

requestWindowFeature(int windowConstVal)是一个调用Activity的方法,并且总是使用Window类中的一个Constant,它将各种附加功能应用于窗口。

getWindow()。addFlags()从当前活动中获取窗口引用并添加标记(更多功能)使用windowManager类中的常量。

答案 2 :(得分:0)

您可以创建一个SurfaceView,但它取决于您想要做什么,如果它有用或没有。如果你想制作游戏,它可能会很有用,但是因为你可能想要使用按钮或标签之类的东西,你可以像其他答案中所描述的那样隐藏它,或者使用它(因为它为你提供了一个选项菜单)。

最终归结为你想做的事情

答案 3 :(得分:0)

在您的清单中,您添加了这一行,但之间添加了已存在的活动代码。

这是一行:android:theme =" @android:style / Theme.NoTitleBar.Fullscreen"

这应该有效,没有理由不这样做,我确信这是因为我最近使用过它。