使用 TextInputLayout 时更改 EditText textAllCaps

Nic*_*rdi 6 android

我正在使用设计库中的新 TextInputLayout。我能够让它显示并更改浮动标签的颜色。不幸的是,它不会将文本更改为大写。

我不想改变我的 strings.xml,因为我只想这个标签是大写的。我曾尝试以编程方式更改布局、样式中的 textAllCaps,但 EditText 提示的情况始终显示为与 strings.xml 完全相同。

这是我的 TextInputLayout 和 EditText 的 XML

<android.support.design.widget.TextInputLayout
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android.support.design:hintTextAppearance="@style/TextInputLayout">


<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/city"
    android:textColorHint="@color/black"
    android:hint="@string/city" />

</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)

这是我用于 TextInputLayout 的样式(我尝试使用唯一的“textAllCaps”(没有“android:”)属性,但没有为我做任何事情):

<style name="TextInputLayout" parent="@android:style/TextAppearance">
 <item name="android:textAllCaps">true</item>
</style>
Run Code Online (Sandbox Code Playgroud)

小智 0

在你的 .xml 中

<android.support.design.widget.TextInputLayout
 android:layout_width="match_parent"
 android:layout_height="wrap_content"
 android.support.design:hintTextAppearance="@style/TextInputLayout">


<EditText
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:id="@+id/city"
    android:textColorHint="@color/black"
    android:hint="@string/city" />

</android.support.design.widget.TextInputLayout>
Run Code Online (Sandbox Code Playgroud)