5

重複の可能性:
すべての TextView にスタイル属性を追加せずにすべての TextView (またはカスタム ビュー) のスタイルを設定する

TextViewアプリに sがたくさんあります。それらにはさまざまなフォントサイズ、色などがあります。すべてに影を付けるには、android:shadowColor適用する必要があります。android:shadowRadiusどうやってするの?

TextViewたとえば、必要なプロパティを使用して s のスタイルを作成できます

<style name="text_views">
    <item name="android:shadowColor">@color/tv_shadow</item>
    <item name="android:shadowDy">1</item>
    <item name="android:shadowRadius">0.7</item>
</style>

そしてそれをそれぞれに適用しますTextView。アプリケーションのテーマに影のプロパティを含めることは可能ですか?

4

2 に答える 2

8

はい、そうです。

あなたがする必要があるのは、

<style name="Theme.RedPlanetTheme" parent="android:Theme">
    <item name="android:shadowColor">@color/tv_shadow</item>
    <item name="android:shadowDy">1</item>
    <item name="android:shadowRadius">0.7</item>
</style>

次に、マニフェストでこれを行います。

<application
        android:debuggable="true"
        android:icon="@drawable/icon"
        android:label="Red Planet App"
        android:theme="@style/Theme.RedPlanetTheme" >

これにより、アプリケーション全体がカスタム テーマ スタイルを継承できるようになります。

編集

テキストビューのみに適用する場合は、ThemeRedPlanet をもう少しカスタマイズする必要があります。

<style name="Theme.RedPlanetTheme" parent="android:Theme">    
    <item name="android:textAppearance">@style/MyRedTextAppearance</item>
</style>

<style name="MyRedTextAppearance" parent="@android:style/TextAppearance">
    <item name="android:shadowColor">@color/tv_shadow</item>
    <item name="android:shadowDy">1</item>
    <item name="android:shadowRadius">0.7</item>
</style>

これを例として使用しています。スティーブ・ポメロイは、より直接的にグローバルなテーマを適用します (ちょっとした契約で設定されます)

于 2012-11-28T07:09:52.573 に答える
5

以下の行をテキストビューのプロパティに追加してください。問題が解決します。

style="@style/text_views"

于 2012-11-28T07:09:51.463 に答える