我是一名初级Android开发人员,我面临的一个问题是如何让我的应用程序全屏显示。 我用过:
"android:theme=”@android:style/Theme.NoTitleBar.Fullscreen"
但它实际上只是删除了状态和操作栏,但它保留了导航栏。 我尝试了各种不同的方法,但没有任何成功,但我知道可能,因为我有很多应用程序没有像Subway Surfers那样显示导航栏。
制作它的正确方法是什么?
答案 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"
这应该有效,没有理由不这样做,我确信这是因为我最近使用过它。