【问题标题】:How to style hint for EditText with inputType set to textPassword in Android如何在 Android 中将 inputType 设置为 textPassword 的 EditText 样式提示
【发布时间】:2017-07-07 10:17:02
【问题描述】:

当我在 EditText 中设置 inputType=textPassword 时,hint 的文本样式会发生变化。请看这张图片:

两个 EditText 具有相同的 XML,但上面的 inputType 设置为 textPassword

如何让它们看起来一样?

【问题讨论】:

标签: android android-edittext android-styles


【解决方案1】:

以编程方式设置 Edittext 字体默认值

password.setTypeface(Typeface.DEFAULT);

【讨论】:

  • 键盘打开时显示的字体怎么样?它仍然显示为等宽字体
【解决方案2】:

问题是文本setTypeface。

提示:默认情况下,当您将 EditText 元素设置为使用 "textPassword" 输入类型,字体系列设置为等宽,所以你 应将其字体系列更改为“sans-serif”,以便两个文本字段 使用匹配的字体样式。

更多详情请参考此链接, Try

【讨论】:

    【解决方案3】:

    在 EditText inputType 设置为 textPassword 中字体会改变 对 EditText 密码字段使用 TextInputLayout

    试试这个代码:

    <android.support.design.widget.TextInputLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            app:hintEnabled="false"
            app:passwordToggleEnabled="true">
    
            <EditText
                android:id="@+id/input_password"
                android:layout_width="match_parent"
                android:layout_height="50dp"
                android:background="@color/white"
                android:drawableLeft="@drawable/ic_password"
                android:drawableStart="@drawable/ic_password"
                android:hint="@string/password"
                android:imeOptions="actionDone"
                android:inputType="textPassword"
                android:textColor="@color/floating_text_color_accent"
                android:textSize="@dimen/text_size_small" />
        </android.support.design.widget.TextInputLayout>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-08-16
      • 1970-01-01
      • 1970-01-01
      • 2015-06-18
      • 2011-07-31
      • 1970-01-01
      • 2011-11-02
      相关资源
      最近更新 更多