6

android:lineSpacingMultipliertextAppearance スタイル ( )を追加しようとしていますが、機能しandroid:textAppearanceません。私は何か間違ったことをしていますか?

TextAppearance スタイル:

<style name="TextAppearance.Body1" parent="TextAppearance.AppCompat.Body1">
      <item name="android:lineSpacingMultiplier">1.25</item>
</style> 

スタイルの使用:

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="This is body 1\nThis is body 1"
    android:textAppearance="TextAppearance.Body1"
    />
4

3 に答える 3

9

何らかの理由android:lineSpacingMultiplierで、 内のアイテムとして機能しませんtextAppearanceTextView属性として ( を使用して) 直接設定するか、 と を設定してandroid:lineSpacingMultiplier「ラップ」する通常のスタイルを作成する必要があります。textAppearancelineSpacingMultiplier

スタイルを作成する

<style name="TextBody1">
    <item name="android:textAppearance">@style/TextAppearance.AppCompat.Body1</item>
    <item name="android:lineSpacingMultiplier">1.25</item>
</style>

また

<style name="TextBody1" parent="TextAppearance.AppCompat.Body1">
    <item name="android:lineSpacingMultiplier">1.25</item>
</style>

そして、style代わりに経由して適用しますandroid:textAppearance

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:text="This is body 1\nThis is body 1"
    style="@style/TextBody1"
    />
于 2017-02-13T22:20:18.393 に答える