在一个活动中从操作栏中删除标题文本

时间:2012-08-16 08:15:48

标签: android

我在活动中添加了一个带有下拉菜单的操作栏,但它也显示了应用程序名称。

我的每个活动都有一个操作栏,每个活动都使用主题@android:style/Theme.Holo.Light。一个我的活动屏幕我想用下拉/微调菜单显示操作栏但我想隐藏应用程序标题。

我在另一篇SO帖子上看到this solution,但它要求我更改全局主题设置,如果我理解正确,那么这种方法会从我的所有操作栏中删除标题。

我该怎么做?


以下是截图:

enter image description here

4 个答案:

答案 0 :(得分:13)

可以用一个漂亮的衬垫

完成
getActionBar().setDisplayShowTitleEnabled(false)

这将隐藏标题。如果您还想隐藏主页徽标

getActionBar().setDisplayShowHomeEnabled(false);

使用AppCompat支持库时,您应将getActionBar()替换为getSupportActionBar()。还建议您在更改ActionBar之前检查ActionBar是否为空。

ActionBar actionBar = getSupportActionBar()
if (actionBar != null) {
    actionBar.setDisplayShowTitleEnabled(false);
    actionBar.setDisplayShowHomeEnabled(false);
}

答案 1 :(得分:6)

对于这种简单的东西,你只需要到源头找到答案: 这里有完整的解释: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

之前调用此方法

快乐的编码。

答案 2 :(得分:0)

上面提出的解决方案在隐藏之前仍然会显示一个短暂的标题。我使用以下内容,我认为这是实现这一目标的最佳方式:

在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>

答案 3 :(得分:-4)

在menifeast

的活动标签中使用此功能
android:theme="@android:style/Theme.NoTitleBar"