我有TextInputLayout
。我尝试应用自定义hintTextAppearance
样式
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/wizard_horizontal_margin"
android:paddingRight="@dimen/wizard_horizontal_margin"
android:paddingTop="@dimen/wizard_vertical_margin"
android:paddingBottom="@dimen/wizard_vertical_margin">
<TextView
android:paddingBottom="@dimen/wizard_vertical_margin"
android:text="What's your email address?"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:textColor="?attr/wizardTextViewColor"
android:textSize="18sp"
android:id="@+id/text_view" />
<android.support.design.widget.TextInputLayout
app:hintTextAppearance="@style/WizardTextInputLayout"
android:id="@+id/text_input_layout"
android:layout_width="match_parent"
android:layout_height="wrap_content" >
<EditText
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:inputType="textEmailAddress"
android:hint="Email address"
android:id="@+id/email_edit_text" />
</android.support.design.widget.TextInputLayout>
</LinearLayout>
我尝试通过应用以下自定义样式使文本变为粗体。
<style name="WizardTextInputLayout" parent="TextAppearance.Design.Hint">
<item name="android:textStyle">bold</item>
</style>
然而,之前看起来并没有什么不同。应用自定义样式后。
hintTextAppearance
样式hintTextAppearance
样式我可以确认造型效果。因为,如果我以android:textSize
样式添加WizardTextInputLayout
属性,我可以看到浮动标签文字大小发生了变化。
但是,为什么将浮动标签文本设置为粗体并不起作用?我可以尝试将浮动标签文字加粗吗?
答案 0 :(得分:0)
设置textinputLayout的自定义字体会影响提示文本的外观和样式,您可以使用setHintTextAppearance(int resId)
TextInputLayout
方法,提供自定义文本样式xml,克服这个问题。
您可以创建一个自定义类来扩展TextInputLayout
类并覆盖setTypeFace()
方法:
@Override
public void setTypeface(@Nullable Typeface typeface) {
setTypeface(Your_Bold_typeface);
}
您应该在其中设置从所需字体的粗体版本创建的字体。