场景需求:
EditText输入框的UI展示,默认提示文字和输入后的文字样式不一样,如下图:
实现该需求的思路如下:
一、strings.xml中增加:
<string name="hint_input_phone"><font size="16">请输入您的手机号码</font></string>
我们在这里面设定了hint文字的大小为16sp。
二、布局文件中使用:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@null"
android:hint="@string/hint_input_phone"
android:inputType="phone"
android:maxLength="11"
android:maxLines="1"
android:textColorHint="@color/v330_gray"
android:textSize="30sp"
android:textStyle="bold"/>
当我们这样使用时,手机上展示的UI效果如下:
我们可以看到,默认情况下,其中的光标和hint文字上下没对齐,当有文字输入时,显示就正常了,这很影响用户体验。
解决方案:
只需增加该属性即可:
android:gravity="top"
最终xml中EditText如下:
<EditText
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:background="@null"
android:hint="@string/hint_input_phone"
android:inputType="phone"
android:maxLength="11"
android:maxLines="1"
android:gravity="top"
android:textColorHint="@color/v330_gray"
android:textSize="30sp"
android:textStyle="bold"/>
最终显示效果如下: