在 Android 视图中取消大写文本

Decapitalizing text in Android view

我想在 Android 视图中插入文本,例如按钮。 问题是我想将文本中的某些特定字符大写,但是 Android 将文本字段中的所有文本大写。例如,我用文本 "ExaMple" 标记了一个按钮,其中我将字符 "e" 和 "m" 大写,然后我看到了 "EXAMPLE"。有人给我一些建议吗?

添加:android:textAllCaps="false" 到按钮的样式

所以改变:

<Button
    android:id="@+id/TestButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="ExaMple" />

至:

 <Button
    android:id="@+id/TestButton"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAllCaps="false"
    android:text="ExaMple" />

要取消项目中所有文本的大写,请使用 style.xml。

-->
    <style name="AppBaseTheme" parent="Theme.AppCompat.Light.NoActionBar">
        <item name="colorPrimary">@color/colorPrimary</item>
        <item name="android:textAppearanceButton">@style/CustomTheme.ButtonTextAppearance</item>

        <!--<item name="colorPrimaryDark">@color/ColorPrimaryDark</item>-->
        <!--
            Theme customizations available in newer API levels can go in
            res/values-vXX/styles.xml, while customizations related to
            backward-compatibility can go here.





        -->
    </style>

    <!-- Application theme. -->
    <style name="AppTheme" parent="AppBaseTheme">
        <!-- All customizations that are NOT specific to a particular API-level can go here. -->
    </style>

    <style name="CustomTheme.ButtonTextAppearance" parent="@style/Base.TextAppearance.AppCompat.Button">
        <item name="textAllCaps">false</item>
        <item name="android:textAllCaps">false</item>
    </style>

这是我的项目style.xml。您只需要在样式中使用 AppTheme 部分。