简介
TextInputLayout 主要是作为 TextInputEditText 的容器,从而为 TextInputEditText 生成一个浮动的 Label,当用户点击 TextInputEditText 的时候,TextInputEditText 中的 hint 字符串会自动移到 TextInputEditText 的左上角。
效果图
1. 修改字体
1.1 样式
@color/colorPrimary
@color/gray
@color/colorPrimary
18sp
1.2 设置
// 1.TextInputLayout:
app:hintTextAppearance="@style/MyHintText"
--------------------------------------------
//2. TextInputEditText
android:theme="@style/MyEditText"
2. 错误提示
2.1 样式
@color/red
2.2 设置
// 布局设置
app:errorEnabled="true"
app:errorTextAppearance="@style/MyErrorText"
------------------------------------
//代码
mName.addTextChangedListener(new TextWatcher() {
@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
}
@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
}
@Override
public void afterTextChanged(Editable s) {
if (mTilName.getEditText().getText().length() > mTilName.getCounterMaxLength()){
mTilName.setError("输入内容超过上限");//show
} else {
mTilName.setError(null);//hide
}
}
});
3. 字数限制
3.1 样式
@color/orange
3.2 设置
app:counterEnabled="true"
app:counterMaxLength="3"
app:counterOverflowTextAppearance="@style/MyOverflowText"
4. 密码
4.1 设置 TextInputEditText 输入类型
android:inputType="textPassword"
4.2 设置 TextInputLayout
app:passwordToggleEnabled="true"
app:passwordToggleTint="@color/colorPrimary" //换图标的颜色
app:passwordToggleDrawable="@drawable/ic_password" //换图标