禁用时在某个活动中设置新的ActionBar
Posted
技术标签:
【中文标题】禁用时在某个活动中设置新的ActionBar【英文标题】:Setting new ActionBar in a certain activity when it was disabled 【发布时间】:2017-02-25 12:35:30 【问题描述】:我是 android 开发新手,如果这是一个愚蠢的问题,我深表歉意。我已经在 AndroidManifest.xml 中禁用了操作栏,就像 android:theme="@style/AppTheme.NoActionBar"
一样,但我在某个活动中需要操作栏。如何仅为该活动创建和设置新的操作栏?
编辑: 我忘了提到我想要一个动作栏的活动是没有动作栏的活动的子项。我想这会导致问题。
【问题讨论】:
Apply a theme to an activity in Android?的可能重复 【参考方案1】:为清单中的特定活动定义主题。
<activity
android:theme="@style/AppTheme.NoActionBar"
>
【讨论】:
【参考方案2】:最好的办法就是解决这个问题
<activity android:name=".MainActivity" android:theme="@style/AlertDialog.AppCompat.Light" android:label="activity_with_actionbar" />
还有
<activity android:name=".SecondActivity" android:theme="@style/Theme.AppCompat.NoActionBar" android:label="activity_with_no_actionbar" />
【讨论】:
【参考方案3】:你可以做相反的事情,即在AndroidManifest
中保持主题为android:theme="@style/AppTheme"
在您不希望看到 ActionBar 的活动中,在其 onCreate
方法中添加以下代码:
getSupportActionBar().hide();
【讨论】:
【参考方案4】:为清单中的每个活动专门添加主题
<activity
android:name=".MainActivity"
android:theme="@style/Theme.AppCompat.Light.NoActionBar" >
</activity>
【讨论】:
【参考方案5】:您可以创建自定义操作栏。并在你需要有一个动作栏的活动中实现 ActionBar 类。这是做你想做的事情的非常简单的方法。关注this 教程。
【讨论】:
以上是关于禁用时在某个活动中设置新的ActionBar的主要内容,如果未能解决你的问题,请参考以下文章
如何在禁用布局时在引导程序中设置的 Zend 控制器中回显头部链接
如何在 iOS 上的 Core Data 中设置新创建的关系?