我在我的活动中添加了一个带有下拉菜单的操作栏,但它也显示了应用程序名称。
我的每个活动都有一个操作栏,每个活动都使用主题@android:style/Theme.Holo.Light
。一个是我的活动屏幕,我想用下拉/微调菜单显示操作栏,但我想隐藏应用程序标题。
我在另一篇 SO 帖子上看到了这个解决方案,但它需要我更改全局主题设置,如果我理解正确,这种方法将从我的所有操作栏中删除标题。
我怎样才能做到这一点?
这是一个屏幕截图:
可以用一个漂亮的衬里来完成
getActionBar().setDisplayShowTitleEnabled(false)
这将只隐藏标题。如果您还想隐藏主页徽标
getActionBar().setDisplayShowHomeEnabled(false);
使用 AppCompat Support 库时,应替换getActionBar()
为getSupportActionBar()
. 还建议您在更改其上的值之前检查 ActionBar 是否为空。
ActionBar actionBar = getSupportActionBar()
if (actionBar != null) {
actionBar.setDisplayShowTitleEnabled(false);
actionBar.setDisplayShowHomeEnabled(false);
}
对于这种简单的东西,你只需要去源头找到答案:这里是完整的解释:http: //developer.android.com/guide/topics/ui/actionbar.html#Dropdown
这里有一些指导代码,在操作栏上包含微调器:
ActionBar actionBar = getActionBar();
actionBar.setNavigationMode(ActionBar.NAVIGATION_MODE_LIST);
之后,只需为更改设置一个监听器并设置一个微调器适配器。
你可以使用:
setTitle("");
删除标题。我一直在这里检查我的代码,您也可以尝试一下:
requestWindowFeature(Window.FEATURE_NO_TITLE);
它应该只是删除标题,然后离开标题栏。请记住,您必须先调用它setContentView
快乐编码。
上述建议的解决方案在使其不可见之前仍会短暂显示标题。我使用以下方法,我认为这是实现这一目标的最佳方法:
在 Manifest 的活动声明中简单地禁用 app_name。这样,它永远不会显示您不希望它出现的活动:
<activity
android:name="com.myapp.MainActivity"
android:label="@string/app_name" > <!-- Delete this -->
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
在你的menifeast活动标签中使用它
android:theme="@android:style/Theme.NoTitleBar"