4

この件に関してすでに投稿された質問はほとんどないことを私は知っています。ほぼすべての投稿をフィルタリングしましたが、運が悪く、取得しなければならない結果が得られません。最初にコード snippet#1を試しましたが、image1 のようにすべて正常に動作しました。しかし、アクションバーの背景を明るくくすんだ色に変更する必要があります。その結果、アクティビティのタイトルとアイテムのタイトルが白くなり、ほとんど判読できなくなります。そのため、テキストの色を変更することにしましたが、styles.xml の現在のコードで変更する方法がわかりませんでした。誰かが現在のコード (スニペット #1)自体でテキストの色を変更するのを手伝ってくれたら、それはとても素晴らしいことです。現在のコードを変更する方法がわからなかったので、これに従ったので、私のコードはコードスニペット#2です、今私のアクションバーは完全に奇妙になり、ホームアイコンとアプリのタイトルが消え、画像2のように右に向かっているアイテムだけが表示されます. 誰かがこの問題を解決するのを手伝ってくれますか?

コードスニペット#1

<style name="MyTheme" parent="Theme.Sherlock">
    <item name="actionBarStyle">@style/MyActionBar</item>
    <item name="android:actionBarStyle">@style/MyActionBar</item>
    <item name="android:windowBackground">@color/white</item>
</style>

<style name="MyActionBar" parent="Widget.Sherlock.ActionBar">
    <item name="background">@drawable/action_bar_background</item>
    <item name="android:background">@drawable/action_bar_background</item>
</style>

コード スニペット #2

<style name="MyTheme" parent="Theme.Sherlock.Light">
        <item name="actionBarStyle">@style/CustomActionBar</item>
    </style>

    <style name="CustomActionBar" parent="android:style/Widget.Holo.Light.ActionBar">
         <item name="android:background">@drawable/action_bar_background</item>
         <item name="titleTextStyle">@style/ActionBarTitle</item>
    </style>

    <style name="ActionBarTitle" parent="@android:style/TextAppearance.Medium">
        <item name="android:textColor">#000000</item>
    </style>

以下は私の画像です:

ここに画像の説明を入力

ここに画像の説明を入力

2枚目の画像では、タイトル、アイコン、青い枠線が消えています。home enabled を true に設定しているため、それらを表示する必要があります。

4

3 に答える 3

28

これは、ActionBarをカスタマイズするために最も推奨されます。

http://jgilfelt.github.com/android-actionbarstylegenerator/

それも簡単です。

一部のテキストの色/サイズのみを変更したい場合は、次のことを試してください。

<?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>
        <item name="android:textSize">@dimension/MEDIUM_TEXT</item>
        <item name="textSize">@dimension/MEDIUM_TEXT</item>
    </style>
</resources>
于 2012-12-28T11:14:24.387 に答える
2

I used the link above from Archie.bpgc and created a style that used the Light - Dark Action Bar and that solved my problem by allowing me to pick the colors that I needed.

The above example did not work for me to change the text color.

The link: http://jgilfelt.github.com/android-actionbarstylegenerator/

于 2013-03-17T22:35:06.397 に答える
0

ActionBarSherlockのTitleにあるテキストの色ではなく、Menuにあるテキストの色を変更しようとしていると思います。

" 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>

親 = " TextAppearance.Sherlock.Widget.ActionBar . Title " >を単に交換するだけであることを確認してください

于 2015-10-01T17:58:03.897 に答える