问题类型

Layout中添加一个Button

<Button android:id="@+id/bt_showerror"
    android:layout_width="200dp"
    android:layout_height="wrap_content"
    android:text="ShowError"
/>

预览界面和真机运行却显示:

这里写图片描述

与直接设置的字符串的显示不一样,显示的文字都显示了大写。

原因探索

AS中针对Activity中设置 android:theme=”@style/AppTheme” 而 而AppTheme的父主题是Theme.AppCompat.Light.DarkActionBar,一直追溯,追溯的过程中关注一个属性值: android:textAllCaps 最后可以找到主题中已经将这个属性设置为true,导致最后出现了你看到的现象。

解决办法

默认的SDK中的设置属性是无法改变的,除非你重新编译对应的framework代码。 这里我们可以直接在对应的Button中设置属性: android:textAllCaps=”false” 这样字体的大小写就正常了

    <Button android:id="@+id/bt_showerror"
        android:layout_width="200dp"
        android:layout_height="wrap_content"
        android:text="ShowError"
        android:textAllCaps="false"
       />

这里写图片描述

results matching ""

    No results matching ""