我试图自定义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>
有什么建议吗?
答案 0 :(得分:2)
感谢@Hemant领导,但您发布的代码将更改操作栏背景颜色而不是标签栏。但是看看那段代码,我想到了以编程方式而不是样式设置它,如下所示:
SupportActionBar.SetStackedBackgroundDrawable(Resources.GetDrawable(Resource.Drawable.ab_stacked_solid_customstyle));
再次感谢。
答案 1 :(得分:0)
尝试,这样可以改变颜色。使用ARgb(#AARRGGBB)生成Color。 Alpha(AA)用于透明度或RGB(#RRGGBB),带有标准颜色。
getSupportActionBar().setBackgroundDrawable(new ColorDrawable(Color.parseColor("#FF00853c")));
希望有效..