仅使用actionBarSherlock显示选项卡

5
我正在使用actionbarSherlock构建一个应用程序,并在其中一个活动中使用选项卡。 是否可以仅显示选项卡并隐藏栏?如下左侧为实际显示样式,右侧是我想要的显示方式。
2个回答

4
您需要设置正确的主题。在您的清单文件中,在activity声明中添加以下内容:
android:theme="@android:style/Theme.NoTitleBar"

编辑

你也可以通过代码来隐藏标题栏。在你的活动的onCreate()方法中添加以下代码:

requestWindowFeature(Window.FEATURE_NO_TITLE);

编辑3

您可以创建自己的样式,派生自Sherlock的样式,并添加禁用标题栏的选项。像这样:

<style name="MyTheme" parent="Theme.Sherlock.Light.DarkActionBar">
   <item name="android:windowNoTitle">true</item>
</style>

然后使用MyTheme创建活动。

我尝试了,但是出现了异常:java.lang.RuntimeException: 无法启动活动 ComponentInfo{br.com.guitcastro.rachaconta/br.com.guitcastro.rachaconta.activity.TabsFragmentActivity}:java.lang.IllegalStateException: 您必须使用Theme.Sherlock、Theme.Sherlock.Light、Theme.Sherlock.Light.DarkActionBar或其派生类。 - Guilherme Torres Castro
谢谢帮忙。但是当我调用requestWindowFeature(Window.FEATURE_NO_TITLE)时,我遇到了NullPointer问题。 - Guilherme Torres Castro
我在Sherlock主题中找不到Theme.Sherlock.NoTitleBar=/ - Guilherme Torres Castro
嗯,看起来Theme.Sherlock.NoTitleBar只是未解决的愿望 - Marcin Orlowski
这个也不行,但我找到了解决方案! 我会给你加一分,非常感谢! - Guilherme Torres Castro
请在评论中发布解决方案,这样其他人在遇到相同问题时就可以节省时间了。 - Marcin Orlowski

4
解决方案如下:
ActionBar bar = getSupportActionBar();
bar.setDisplayShowTitleEnabled(false);  
bar.setDisplayShowHomeEnabled(false);

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接