隐藏Android Action Bar解决方案
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了隐藏Android Action Bar解决方案相关的知识,希望对你有一定的参考价值。
我一直在寻找隐藏android Action Bar的解决方案。它们中的数十个被发布并以相同的方式工作 - 仅在第二个显示动作条后才隐藏它。不够好,所以我测试了更多并创建了我自己的解决方案。它没有在任何地方发表,但对我来说似乎非常简单明了。最重要的是 - Action Bar根本无法看到。
我的问题是 - 它有什么问题? )为什么Android恐龙会避免这样的事情?
隐藏Android操作栏的解决方案:
在清单中
android:theme="@style/CustomActionBarTheme"
在themes.xml中
<style name="CustomActionBarTheme"
parent="@style/Theme.AppCompat.Light.DarkActionBar">
<item name="android:actionBarStyle">@style/MyActionBar</item>
<!-- Support library compatibility -->
<item name="actionBarStyle">@style/MyActionBar</item>
</style>
<!-- ActionBar styles -->
<style name="MyActionBar"
parent="@style/Widget.AppCompat.Light.ActionBar.Solid.Inverse">
<item name="android:layout_marginBottom">-50dp</item>
</style>
如你所见,我只使用负marginBottom。
您应该只使用Theme.AppCompat.Light.NoActionBar
- 它会根据其名称完全删除操作栏。
使用这个parent="Theme.AppCompat.Light.NoActionBar"
并允许你的风格
<item name="android:windowNoTitle">true</item>
<item name="android:windowActionBar">false</item>
<item name="android:windowFullscreen">true</item>
<item name="android:windowContentOverlay">@null</item>
更多信息您可以查看SO答案。我希望它能帮助您。 Full Screen Theme for AppCompat
如果您不想使用ActionBar
,那么您可以使用Theme.AppCompat.Light.NoActionBar
主题。
在AndroidManifest.xml中的Activity主题中应用以下内容:
<activity android:name=".Activity"
android:label="@string/app_name"
android:theme="@android:style/Theme.NoTitleBar">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
你也可以以编程方式隐藏ActionBar
。
ActionBar actionBar = getActionBar(); or getSupportActionBar();
actionBar.hide();
我希望它有所帮助!
我只是在/res/values/style.xml
中更改了父值:
<resources>
<!-- Base application theme. -->
<style name="AppTheme" parent="Theme.AppCompat.Light.NoActionBar">
</style>
</resources>
这对我有用。
以上是关于隐藏Android Action Bar解决方案的主要内容,如果未能解决你的问题,请参考以下文章
如何在android中找到系统Action Bar中存在的不同图标的宽度