ActionBarSherlock
でタイトルの色を設定するにはどうすればよいですか?
どのテーマ属性を使用する必要がありますか?
親のテーマ
カスタムアクションバーの実装を機能させるには、アプリケーションでTheme.Sherlock、Theme.Sherlock.Light、またはTheme.Sherlock.Light.DarkActionBarを使用するか、カスタムテーマで前述のいずれかを親として使用する必要があります。
ミラーリングされた属性
Androidのテーマシステムの制限により、テーマのカスタマイズは2つの属性で宣言する必要があります。通常のAndroidプレフィックス付き属性は、テーマをネイティブアクションバーに適用し、プレフィックスなし属性はカスタム実装用です...
つまり、ActionBar
をスタイリングするときは、Android:
プレフィックスを省略する必要があります。
タイトルの色のテーマ
<?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>
私が最後にしたことは、アクティビティのテーマを設定することでした。
public static int THEME = R.style.Theme_Styled;
この行はsuper.onCreate()メソッドの前にあります
setTheme(THEME);
これです。
ActionBarSherlockのTitleにあるテキストの色ではなく、Menにあるテキストの色を変更しようとしていると思います。
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">
と交換するだけです。
style.xmlまたはプログラムで2か所から実行できます
1.style.xmlから
2.またはコードで
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>"));