webdevqa.jp.net

Androidアプリのスタイルとテーマのテキストの外観を変更する

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

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

22

完全を期すため、そして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>

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

39

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

<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" 
/>
2
Padma Kumar