11

私は自分のアプリに listpreference を持っています。それをカスタマイズしたいのですが、次のようにテーマを prefs アクティビティに設定できます。

 <activity 
     android:name=".Prefs" 
     android:label="@string/app_name" 
     android:theme="@style/PreferencesTheme">

好みのスタイル:

<?xml version="1.0" encoding="utf-8" ?> 
<resources xmlns:android="http://schemas.android.com/apk/res/android">
 <style name="PreferencesTheme" parent="android:Theme">
 <item name="android:background">#FFDAB9</item> 
 <item name="android:textColor">@color/red_color</item> 
 <item name="android:textSize">20sp</item> 
</style>
</resources>

上記のスタイルは、ListPreference の背景と ListPreference のタイトル テキストのサイズとテキストの色を変更しますが、 ListPreferenceの概要のテキストの色やサイズは変更しません。

私はこのコードを試しましたが、うまくいきません:

 <item name="android:textColorSecondary">@color/red_color</item>   

どんな助けでも大歓迎です、ありがとう

4

3 に答える 3

12

答えるには遅すぎるかもしれませんが、色の線を削除してみてください:

<item name="android:textColor">@color/red_color</item>

そして、これを追加します。これは、一次色、二次色、および三次色用です

<item name="android:textColorPrimary">@color/red_color</item>
<item name="android:textColorSecondary">@color/red_color</item>
<item name="android:textColorTertiary">@color/red_color</item>

これらすべてに必要な色を選択できます。正直なところ、どの設定ページでも三次色を見たことはありませんが、一次色はメインと大きなテキスト用で、二次色は一次色の下に表示される小さなテキスト用です。

それが役に立てば幸い。

于 2014-01-31T13:35:11.037 に答える
2

xml ファイルでは、概要の色に textColorSecondary を使用していると書かれているため、これは最悪です

上記のファイルの内容を自分のプロジェクトにコピーして保存し、そのファイルを希望どおりに編集して (ID を変更しないことを忘れないでください)、カスタム リストの基本設定項目のレイアウトを表示することをお勧めします。

次のように、xml でカスタム設定レイアウトを適用できます。

<ListPreference
    android:key="pref_key"
    android:title="@string/my_list_preference"
    android:layout="@layout/custom_list_preference" />
于 2013-07-17T02:24:18.950 に答える