24

Android アプリを作成していますが、アプリのテーマを変更したいと考えています。

テーマを使用してアプリの背景色を変更することはできましたが、デフォルトのテキストの外観を変更するのに苦労しています。

これは私のstyles.xmlリソース ファイルです。

<resources>
    <style name="QTheme" parent="android:Theme.Light">
        <item name="android:windowBackground">@color/q_green</item>
        <item name="android:colorBackground">@color/q_green</item>
        <item name="android:textAppearance">@style/QText</item> 
    </style>

    <color name="q_green">#008000</color>
    <color name="white">#FFFFFF</color>

    <style name="QText" parent="@android:style/TextAppearance.Medium"> 
        <item name="android:textSize">20sp</item> 
        <item name="android:textColor">@color/white</item> 
        <item name="android:textStyle">bold</item>
        <item name="android:textFont">Verdana</item>
    </style>
</resources>

確認するために、これはレイアウト ファイルで上記のスタイルを使用したいTextViewsの 1 つの例です。

<TextView
    android:id="@+id/txtDevice"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    android:text="@string/device" 
/>

誰が私が間違っているのかを見ることができますか?

4

2 に答える 2

44

完全を期すため、そしてLusprogの功績を称えて、これが私のリソースファイルになりました

<resources>
    <style name="QTheme" parent="android:Theme.Light">
        <item name="android:windowBackground">@color/q_green</item>
        <item name="android:colorBackground">@color/q_green</item>
        <item name="android:textViewStyle">@style/QText</item> 
    </style>

    <color name="q_green">#008000</color>
    <color name="white">#FFFFFF</color>

    <style name="QText" parent="@android:style/TextAppearance.Medium"> 
        <item name="android:textSize">20sp</item> 
        <item name="android:textColor">@color/white</item> 
        <item name="android:textStyle">bold</item>
        <item name="android:typeface">sans</item>
    </style>
</resources>

また、フォントのヘルプを提供してくれたPadmaKumarにも感謝します。

于 2012-11-16T12:46:27.930 に答える
3

// この行をスタイルから削除します。このような属性はありません

<item name="android:textFont">Verdana</item>

//フォントスタイルを変更するための書体を指定できます

<item name="android:typeface">monospace</item>

//スタイルの設定用

<TextView
    android:id="@+id/txtDevice"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="center"
    style="@style/QText"
    android:text="@string/device" 
/>
于 2012-11-16T12:14:30.843 に答える