如何设置标题颜色ActionBarSherlock
?
我应该使用哪种主题化的属性?
如何设置标题颜色ActionBarSherlock
?
我应该使用哪种主题化的属性?
从ActionBarSherlock网站
父主题
为了使自定义操作杆实现的功能您的应用程序必须使用Theme.Sherlock,Theme.Sherlock.Light,或Theme.Sherlock.Light.DarkActionBar,或自定义主题,必须使用上述作为其父之一。
镜像的属性
由于Android的主题化系统限制任何主题的自定义必须在两个属性来声明。 正常Android的前缀属性应用主题到本机操作栏和前缀的属性是自定义实现...
总之,这意味着你需要离开了android:
当你的造型前缀ActionBar
。
主题化标题颜色
<?xml version="1.0" encoding="utf-8"?>
<resources>
<style name="YOURTHEME" parent="Theme.Sherlock.Light">
<item name="android:actionBarStyle">@style/YOURTHEME.ActionBarStyle</item>
<item name="actionBarStyle">@style/YOURTHEME.ActionBarStyle</item>
</style>
<style name="YOURTHEME.ActionBarStyle" parent="Widget.Sherlock.Light.ActionBar">
<item name="android:titleTextStyle">@style/YOURTHEME.ActionBar.TitleTextStyle</item>
<item name="titleTextStyle">@style/YOURTHEME.ActionBar.TitleTextStyle</item>
</style>
<style name="YOURTHEME.ActionBar.TitleTextStyle" parent="TextAppearance.Sherlock.Widget.ActionBar.Title">
<item name="android:textColor">@color/YOUR_COLOR</item>
<item name="textColor">@color/YOUR_COLOR</item>
</style>
</resources>
注意
我没有测试过这一点。 另外, 你尝试过什么? 发布前,应该寻找SO的未来。
您可以轻松地做到这一点与
getSupportActionBar().setTitle(Html.fromHtml("<font color='#ffffff'>App Name</font>"));
我已经改变了这样的标题颜色:
在Styles.xml文件,我已经添加了这些风格
<style name="Theme.Styled" parent="@style/Theme.Sherlock.Light">
<item name="actionBarStyle">@style/CustomActionBarStyle</item>
<item name="android:actionBarStyle">@style/CustomActionBarStyle</item>
</style>
<style name="CustomActionBarStyle" parent="@style/Widget.Sherlock.ActionBar">
<item name="titleTextStyle">@style/CustomTitleColorBar</item>
<item name="android:titleTextStyle">@style/CustomTitleColorBar</item>
</style>
<!-- Style for the color title bar -->
<style name="CustomTitleColorBar" parent="@style/TextAppearance.Sherlock.Widget.ActionBar.Title">
<item name="android:textColor">@android:color/white</item>
</style>
我做的最后一件事是设置在活动主题:
公共静态INT主题= R.style.Theme_Styled;
此行之前super.onCreate()方法进行
setTheme(主题);
就是这个。
我认为你正在试图改变文字颜色,是在菜单上,而不是文本的颜色,是在ActionBarSherlock 标题 。
当您使用getSupportActionBar().SetTitle("My Title")
样式这段文字,你应该使用代码@Archie.bpgc
。 他的答案是正确的,但我相信,您需要将下面的代码的:
<style name="MyTheme.TitleTextStyle" parent="TextAppearance.Sherlock.Widget.ActionBar.Menu">
<item name="android:textColor">@color/white</item>
<item name="android:textSize">24sp</item>
<item name="android:gravity">center</item>
</style>
看到你只需交换parent =" TextAppearance.Sherlock.Widget.ActionBar.Title">
与parent = "TextAppearance.Sherlock.Widget.ActionBar.Menu">
你可以从2个地方无论是在style.xml或编程做
1.从style.xml
2.Or代码
int titleId = Resources.getSystem().getIdentifier("action_bar_title", "id", "android");
TextView yourTextView = (TextView)findViewById(titleId);
yourTextView.setTextColor(getResources().getColor(R.color.myColor));
或者用动作条你也可以做到这一点
getSupportActionBar().setTitle(Html.fromHtml("<font color='#ffffff'>App Name</font>"));