更改 TextInputLayout 提示字体
Change TextInputLayout Hint Font
你好,我正在使用 kotlin 将 TextInputLayout 的提示字体设置为:
passwordTextLayout.typeface = Typeface.createFromAsset(context.assets, "fonts/af/myfont.ttf")
其中 myfont.ttf 是一些个人字体文件
它仅在提示 resides/placed 位于文本输入布局的编辑文本中时有效,但是当我单击编辑文本并开始输入时,提示折叠起来,并将字体更改为某种默认字体!
我想在两种情况下使用相同类型的提示,即当提示在编辑文本内部时和当它折叠时。
提示位于编辑文本中时的图片(字体更改请参见 f):
当用户在编辑文本中单击时,图片字体变为 (查看字符 f):
好吧,很显然,在带有 inputType password
的 TextInputLayouts 中,字体存在问题。如果您将 TextView.setInputType() 与以下任何一项一起使用:
InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
InputType.TYPE_TEXT_VARIATION_PASSWORD
InputType.TYPE_TEXT_VARIATION_WEB_PASSWORD
InputType.TYPE_NUMBER_VARIATION_PASSWORD
...然后 Android 应用 Monospace 字体。
我认为,更好的解决方法是执行以下操作:
- 从 xml 的定义中删除 android:inputType="textPassword"
视图。
- 使用Caligraphy3 library应用字体。
- 在代码中设置
PasswordTransformation
:
。
.
password.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
password.setTransformationMethod(PasswordTransformationMethod.getInstance());
你好,我正在使用 kotlin 将 TextInputLayout 的提示字体设置为:
passwordTextLayout.typeface = Typeface.createFromAsset(context.assets, "fonts/af/myfont.ttf")
其中 myfont.ttf 是一些个人字体文件
它仅在提示 resides/placed 位于文本输入布局的编辑文本中时有效,但是当我单击编辑文本并开始输入时,提示折叠起来,并将字体更改为某种默认字体!
我想在两种情况下使用相同类型的提示,即当提示在编辑文本内部时和当它折叠时。
提示位于编辑文本中时的图片(字体更改请参见 f):
当用户在编辑文本中单击时,图片字体变为 (查看字符 f):
好吧,很显然,在带有 inputType password
的 TextInputLayouts 中,字体存在问题。如果您将 TextView.setInputType() 与以下任何一项一起使用:
InputType.TYPE_TEXT_VARIATION_VISIBLE_PASSWORD
InputType.TYPE_TEXT_VARIATION_PASSWORD
InputType.TYPE_TEXT_VARIATION_WEB_PASSWORD
InputType.TYPE_NUMBER_VARIATION_PASSWORD
...然后 Android 应用 Monospace 字体。
我认为,更好的解决方法是执行以下操作:
- 从 xml 的定义中删除 android:inputType="textPassword" 视图。
- 使用Caligraphy3 library应用字体。
- 在代码中设置
PasswordTransformation
:
。 .
password.setInputType(InputType.TYPE_TEXT_VARIATION_PASSWORD);
password.setTransformationMethod(PasswordTransformationMethod.getInstance());