【问题标题】:ActionBarSherlock with Action Bar Style Generator带有操作栏样式生成器的 ActionBarSherlock
【发布时间】:2013-08-07 23:04:51
【问题描述】:

在过去的几天里,我正在尝试实现自定义主题,该主题由操作栏样式生成器创建到我的应用程序中。我可以将主题与 SDK 中的一些通用示例一起使用,但我无法将它与使用 ActionBarSherlock 的应用程序一起使用。

我的带有 ActionBarSherlock 的应用程序是 Tabs 和 Pager 的修改示例。 我做的步骤:

  1. 使用 Android 操作栏样式生成器创建主题。
  2. 将主题复制到我的应用程序内的 res 文件夹。
  3. 在 Manifest 文件中更改主题。

在这些步骤之后,只有“操作栏颜色”会更改为更正。所有其他样式均未在应用程序中使用。我尝试了许多在网上找到的不同方法,但都没有成功。

非常感谢您的帮助。

【问题讨论】:

  • stackoverflow.com/a/16213334/1567588 检查这个。如果这不是你要找的,请告诉我..
  • Santhosh:我现在已经尝试过使用全息发生器。选项卡现在更改为不同的样式(灰色),但颜色不像我设置的那样是橙色的。
  • 我认为根据您的要求,您必须同时使用 Action Bar 样式生成器和全息生成器。下载它们后将它们组合成一个样式。希望你能理解。

标签: android tabs styles actionbarsherlock generator


【解决方案1】:

您是否在styles.xml 中为您的应用主题添加了正确的项目?您需要使用以android: 为前缀的NOT 属性,例如:

<item name="actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="background">@drawable/bg_striped</item>
<item name="backgroundSplit">@drawable/bg_striped_split</item>

您还可以为具有本机操作栏的 Android 版本保留正确的前缀。

<item name="android:actionBarStyle">@style/Widget.Styled.ActionBar</item>
<item name="android:background">@drawable/bg_striped</item>
<item name="android:backgroundSplit">@drawable/bg_striped_split</item>

了解这一点的最佳方式是查看随 ActionBarSherlock 库项目提供的演示。

【讨论】:

  • Karakuri:据我了解,没有 android: 前缀的属性在 values-14 文件夹的主题样式中使用,因此不需要在 values 文件夹中设置。
  • 不,不带前缀的属性在更早的平台级别上使用,因为 Android 在更早的版本上没有使用这些属性。
  • Karakuri:values-14 文件夹表示 API 级别 14,即 android > 4.0 的设备。 Android 操作栏样式生成器为 4.0 前和 4.0 后的版本生成文件夹。我现在将带有 android: 前缀的项目复制到与没有前缀的项目相同的位置,但它仍然没有帮助。即使我在 4.0 之前的 Android 上尝试应用程序,它也不起作用。
【解决方案2】:

我设法解决了这个问题。

  1. 我错过了 TabWidget 中的 android:background 属性。这部分 解决问题。
  2. 我必须以编程方式设置 setLeftStripDrawable 和 setRightStripDrawable。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-08-19
    • 1970-01-01
    • 2013-09-06
    • 2012-05-08
    相关资源
    最近更新 更多