Android Material Design控件之TextInputLayout

Android Material Design Android官方控件学习目录android

TextInputLayout

  • extends LinearLayout
  • 一个TextInputLayout有且只有一个EditText(TextInputEditText)

简单使用

<android.support.design.widget.TextInputLayout
		android:layout_width="0dp"
		android:layout_height="100dp"
		android:layout_marginLeft="8dp"
		app:counterEnabled="true"
		app:passwordToggleEnabled="true"
		android:id="@+id/til_password"
		app:counterMaxLength="16"
		app:hintTextAppearance="@style/hintAppearance"
		app:errorTextAppearance="@style/errorAppearance"
		app:passwordToggleTint="#ababab"
		android:layout_marginRight="8dp" android:layout_marginTop="8dp"
		app:layout_constraintLeft_toLeftOf="parent" app:layout_constraintRight_toRightOf="parent"
		app:layout_constraintTop_toBottomOf="@+id/til_phone"
		app:layout_constraintHorizontal_bias="0.0">
		<!--app:passwordToggleDrawable="@mipmap/ic_launcher"-->
		<!--app:passwordToggleTint="@color/colorAccent"-->
		<!--app:passwordToggleTintMode="screen"-->

		<android.support.design.widget.TextInputEditText
			android:id="@+id/et_password"
			android:layout_width="match_parent"
			android:layout_height="wrap_content"
			android:hint="密码"
			android:inputType="textPassword"
			 />
	</android.support.design.widget.TextInputLayout>

右下角输入数字git

app:counterEnabled="true"
app:counterMaxLength="11"

关闭浮动标签或者动画github

app:hintAnimationEnabled="false"
app:hintEnable="false"

密码的一些属性web

android:inputType="**Password"//必须为Password类型
app:passwordToggleEnabled="true"//显示显示隐藏按钮
app:passwordToggleDrawable="@mipmap/ic_launcher"//指定图标
app:passwordToggleTint="@color/colorAccent"//按钮着色
//screen,src_in,src_atop,src_over,multiply等几种着色模式
app:passwordToggleTintMode="screen" // 按钮着色模式

文字的一些属性app

app:counterTextAppearance="@style/MyStyle"//计数文字格式
app:hintTextAppearance="@style/hintAppearance"//提示文字格式
app:errorTextAppearance="@style/errorAppearance"//错误提示文字格式

错误提示
TextInputLayout提供了一个更好的UI效果的错误提示。svg

textInputLayout.setError("只是展现下错误的显示样式");
editText.setError("只是展现下错误的显示样式");//普通的EditText提示

详细用法请看MaterialDesignWidget.TextInputLayoutActivity学习

github 源码地址:https://github.com/LinweiJ/MaterialDesignWidget动画