gpt4 book ai didi

android:使用 textAppearance 属性设置 textColor

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:33:40 26 4
gpt4 key购买 nike

我在我的应用程序中为字体创建了多种样式。

如何将这些样式添加到 View 中? - 1) 使用样式属性 2) 使用 textAppearance。

使用样式不是一个选项,因为 View 可能有其他属性(边距、填充、最小宽度等 - 我不能为 View 指定 2 种样式),所以我需要单独指定与文本相关的属性,但是 android:textColor 在这里不起作用:

样式.xml:

<style name="TextAppearance.baseText" parent="@android:style/TextAppearance">
<item name="android:textAppearance">?android:textAppearanceSmall</item>
<item name="android:typeface">sans</item>
<item name="android:textColor">@android:color/white</item>
<item name="android:textSize">15sp</item>
</style>

布局.xml:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="65dp"
android:orientation="horizontal" >

<Button
android:id="@+id/backButton"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/sometext"
android:textAppearance="@style/TextAppearance.baseText"/>
</RelativeLayout>

为什么它不起作用?如何在 textappearance 中指定文本颜色?

最佳答案

正如 Oderik 在评论中提到的,Button View 的 textColor 属性有一个默认值。此 textColor 值会覆盖通过 textAppearance 属性设置的任何值。因此,您有两个选择:

  • 将样式中的textColor设置为@null:

    <style name="Application.Button">   
    <item name="android:textAppearance">@style/Application.Text.Medium.White</item>
    <item name="android:textColor">@null</item>
    </style>

    <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    style="@style/Application.Button" />
  • 在按钮 XML 中将 textColor 设置为@null:

    <Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    style="@style/Application.Button"
    android:textColor="@null" />

关于android:使用 textAppearance 属性设置 textColor,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11225851/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com