我正在尝试制作全屏活动,但它似乎不适用于GingerBread,这是我的代码
@SuppressLint("NewApi")
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_eyes);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH){
ActionBar actionBar = getActionBar();
actionBar.hide();
}
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.GINGERBREAD){
requestWindowFeature(Window.FEATURE_NO_TITLE);
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
在Gingerbread中仍有一个标题。
有谁知道如何解决这个问题?
答案 0 :(得分:3)
首先,您应该在清单中将活动设置为全屏。 在所需的活动中,添加此代码
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
你的onCreate应该是这样的
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.GINGERBREAD){
requestWindowFeature(Window.FEATURE_NO_TITLE);
this.getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
setContentView(R.layout.main);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH){
ActionBar actionBar = getActionBar();
actionBar.hide();
}
这可能会解决问题。
答案 1 :(得分:3)
请务必在致电requestWindowFeature
setContentView
尝试使用java进行全屏活动:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
和Manifest
android:theme="@android:style/Theme.Translucent.NoTitleBar"
答案 2 :(得分:1)
requestWindowFeature
之前调用{p> super.onCreate
。像这样:
@SuppressLint("NewApi")
@Override
public void onCreate(Bundle savedInstanceState) {
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.GINGERBREAD){
requestWindowFeature(Window.FEATURE_NO_TITLE);
}
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_eyes);
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.ICE_CREAM_SANDWICH){
ActionBar actionBar = getActionBar();
actionBar.hide();
}
if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.GINGERBREAD){
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN, WindowManager.LayoutParams.FLAG_FULLSCREEN);
}
// ...
如果这不起作用,请将getWindow().setFlags(...)
来电移至顶部。
答案 3 :(得分:0)
除非您有理由不在清单中设置它,否则请在清单中将此属性添加到您的代码中:
<application
android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
.....
>
我相信你不需要onCreate()
中的if-conditions代码。
答案 4 :(得分:0)
不只是android:theme ="@android:style/Theme.NoTitleBar.Fullscreen"
隐藏了标题栏和通知区域吗?
等于:
getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
requestWindowFeature(Window.FEATURE_NO_TITLE);
了解到这一点