0

我刚开始ActionBarSherlock,我设置了自定义样式:

<style name="AppTheme.ActionBar" parent="@style/Theme.Sherlock.Light">
    <item name="actionBarStyle">@style/actionBarStyle</item>
    <item name="android:actionBarStyle">@style/actionBarStyle</item>
</style>

<style name="actionBarStyle" parent="@style/Widget.Sherlock.Light.ActionBar">
    <item name="android:background">@drawable/header_bar</item>
    <item name="background">@drawable/header_bar</item>
    <item name="android:displayOptions">showTitle</item>
    <item name="displayOptions">showTitle</item>
</style>

并将其应用于清单中的活动。

如果我在 Eclipse 的查看器中打开 Activity 的 XML 布局文件,我可以看到背景,但 displayOptions 不会更改查看器,而且我总是看到默认的图标+徽标。

在模拟器中运行应用程序会按预期显示 ActionBar。

为什么会这样?是否可以在 Eclipse 的布局编辑器中看到实际结果?

4

1 回答 1

0

我假设您的构建目标是>API Level 13,因此您在 Eclipse 中的 GUI 编辑器会向您显示默认的 ActionBar。ActionBarSherlock 是第三方库。它不会改变 XML 编辑器的外观。简而言之:不,AFAIK 无法在 GUI 编辑器中看到实际的 ActionBarSherlock。如果您想查看它,您还必须设置默认 ActionBar 的样式(只是为了预览它)。

要设置默认 ActionBar 的样式,您必须使用这些父样式:

@android:style/Theme.Holo.Light(而不是@style/Theme.Sherlock.Light

对于动作栏:

@android:style/Widget.Holo.Light.ActionBar(而不是@style/Widget.Sherlock.Light.ActionBar

于 2012-10-31T22:39:43.203 回答