我想知道如何将全屏主题(没有 Headers 栏没有操作栏)应用于活动 . 我正在使用支持包v7中的AppCompat库 .
我已经尝试将 android:theme="@android:style/Theme.NoTitleBar.Fullscreen"
应用于我的特定活动但它崩溃了 . 我认为这是因为我的应用主题是这样的 .
<style name="AppTheme" parent="Theme.AppCompat.Light.DarkActionBar">
我也试过这个
getWindow().setFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN,
WindowManager.LayoutParams.FLAG_FULLSCREEN);
它只隐藏 Headers 栏但不隐藏操作栏 . 我目前的解决方法是隐藏动作栏
getSupportActionBar().hide();
15 回答
在应用程序中使用Theme.AppCompat时,可以通过将下面的代码添加到样式中来使用FullScreenTheme .
并在您的清单文件中提及 .
基于@nebyan的回答,我发现操作栏仍然没有隐藏 .
以下代码适用于我:
当然不要忘记编辑你的
AndroidManifest
文件 .使用style.xml中的上述xml,您将能够隐藏 Headers 和操作栏 .
Android 4.0之前和之后版本(API级别14)出现问题 .
从这里https://developer.android.com/training/system-ui/status.html我创建了自己的解决方案..
我在onResume()方法中编写此代码,因为如果您退出应用程序然后重新打开它,操作栏将保持活动状态! (这样可以解决问题)
我希望它有用;)
你的"workaround"(自己隐藏actionBar)是正常的方式 . 但谷歌建议在隐藏TitleBar时始终隐藏ActionBar . 看看这里:https://developer.android.com/training/system-ui/status.html
您可以按照以下步骤操作: -
AndoridMenifest.xml
Style.xml
FullImageActivity.java
我希望它会有所帮助 . 谢谢!!
它应该是 parent="@style/Theme.AppCompat.Light.NoActionBar"
要删除AppCompat中的 Headers 栏:
只是这个 ?
此主题仅适用于API 21(包含)之后 . 并使StatusBar和NavigationBar透明化 .
简单地说这个家伙你的风格:
要隐藏状态栏和操作栏并使您的活动全屏显示,请在活动的
onResume()
或onWindowFocusChanged()
方法中使用以下代码:您可以在以下链接中找到更多信息:
https://developer.android.com/training/system-ui/immersive#EnableFullscreen
Full Screen without navigation & status bars
How to hide the soft-key bar on Android phone?
Note: 在此线程中使用xml解决方案我只能隐藏状态栏而不能隐藏导航栏 .