【问题标题】:Change the Sherlock TabBar background color更改 Sherlock TabBar 背景颜色
【发布时间】:2015-04-05 01:25:18
【问题描述】:

我正在尝试自定义 SherlockTabBar,但在更改选项卡背景颜色时遇到了问题。我已经使用了“ActionBarStyle Generator”并从那里复制了我有兴趣更改的资源。现在我设法更改了选定的选项卡指示器,但我不知道如何更改选项卡背景以及选项卡指示器。 我的自定义样式代码如下所示:

  <style name="Theme.Custom" parent="style/Theme.Sherlock.Light">
    <item name="android:actionBarTabStyle">@style/MyActionBarTabStyle</item>
  </style>

  <style name="MyActionBarTabStyle" parent="style/Widget.Sherlock.Light.ActionBar">
    <item name="android:background">@drawable/actionbarselector</item>
    <item name="android:gravity">center</item>
  </style>

和选择器:

<selector xmlns:android="http://schemas.android.com/apk/res/android">
  <item android:state_focused="false" android:state_selected="true"  android:state_pressed="false" android:drawable="@drawable/tab_selected_customstyle"/>
  <item android:state_selected="false" android:state_pressed="true" android:drawable="@drawable/tab_selected_pressed_customstyle" />
  <item android:state_selected="true"  android:state_pressed="true" android:drawable="@drawable/tab_selected_pressed_customstyle" />
</selector>

有什么建议吗?

【问题讨论】:

  • 嘿,试试 api 21 中引入的 TOOLBAR,超级好用,你可以修改工具栏的颜色,高度。只是建议另一种选择。检查链接toolbar
  • 我被困在 SherlockTabBar 上,使用它不是我的选择。无论如何感谢您的建议。

标签: android actionbarsherlock tabbar


【解决方案1】:

感谢@Hemant 提供线索,但您发布的代码将更改操作栏背景颜色而不是标签栏。但是看着那段代码,我想到了以编程方式而不是按样式设置它,如下所示:

SupportActionBar.SetStackedBackgroundDrawable(Resources.GetDrawable(Resource.Drawable.ab_stacked_solid_customstyle));

再次感谢。

【讨论】:

    【解决方案2】:

    试试,这个来改变颜色。使用 ARgb (#AARRGGBB) 生成颜色。 Alpha (AA) 用于透明度或具有标准颜色的 RGB (#RRGGBB)。

    getSupportActionBar().setBackgroundDrawable(new ColorDrawable(Color.parseColor("#FF00853c")));

    希望有效..

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-08-12
      • 1970-01-01
      • 2013-08-08
      • 2020-05-20
      相关资源
      最近更新 更多