当前位置:主页 > 移动开发 > Android代码 >

TextInputLayout输入框控件的悬浮标签

时间:2021-01-01 14:41:39 | 栏目:Android代码 | 点击:

本文实例为大家分享了TextInputLayout输入框悬浮标签的具体代码,供大家参考,具体内容如下

TextInputLayout也是5.0以后的效果,想要使用同样需要在build中配置:

dependencies { 
 compile 'com.android.support:design:23.3.0' 
} 

TextInputLayout可以用来显示一个提示错误信息,把Hint放到EditText左上方等效果的一个布局;
如果项目中有这类的需求,使用TextInputLayout实现起来非常方便;
使用方法也比较简单,直接用TextInputLayout包裹EditText即可:

<android.support.design.widget.TextInputLayout 
 android:id="@+id/til_user" 
 android:layout_width="match_parent" 
 android:layout_height="wrap_content" 
 android:layout_marginTop="20dp" 
 android:layout_marginLeft="20dp" 
 android:layout_marginRight="20dp"> 
 <EditText 
  android:id="@+id/et_user" 
  android:layout_width="match_parent" 
  android:layout_height="wrap_content" 
  android:hint="请输入用户名"/> 
 </android.support.design.widget.TextInputLayout> 

但是默认情况下,当你输入文本的时候TextInputLayout只会将Hint移动到左上方,不会有错误提示,错误提示需要我们手动设置:

etUser= (EditText) findViewById(R.id.et_user); 
 tilUser= (TextInputLayout) findViewById(R.id.til_user); 
 
 //添加文本变化监听 
 etUser.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) { 
  if(s.length()>6){ 
   //打开TextInputLayout异常提示 
   tilUser.setErrorEnabled(true); 
   //设置TextInputLayout异常提示信息 
   tilUser.setError("账号最大长度为6"); 
  }else { 
   //关闭TextInputLayout异常提示 
   tilUser.setErrorEnabled(false); 
  } 
  } 
 
  @Override 
  //输入以后调用 
  public void afterTextChanged(Editable s) { 
  } 
 }); 

点击打开链接免费下载源码

您可能感兴趣的文章:

相关文章