Android Support Library-TextInputLayout
2016-07-10 09:11
405 查看
Android Support Library简介
Android Support Library提供了许多向后兼容的新特性和非常有用的UI元素,这些并没有包含在Android Framework中。如果想要使用此库需要在gradle中添加
使用这个库需要在gradle中添加
compile ‘com.android.support:design:22.2.0’TextInputLayout
TextInputLayout对EditText进行了封装,可以将EditText的hint显示在上方,并且加入了错误检测的功能。使用起来非常的方便。下面通过简单的示例说明。布局文件
第一个EditText只是为了不让TextInputLayout中的EditText首先获取焦点,这样动画效果更加明显。使用TextInputLayout,需要在其内部嵌套一个EditText或者TextInputEditText即可。
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:orientation="vertical" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context="cn.manchester.androidsupportlibrary.TextInputLayoutActivity"> <EditText android:layout_width="match_parent" android:layout_height="wrap_content" /> <android.support.design.widget.TextInputLayout android:layout_width="match_parent" android:layout_height="wrap_content"> <android.support.design.widget.TextInputEditText android:id="@+id/editText" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="请输入长度为6的数字" android:inputType="number" /> </android.support.design.widget.TextInputLayout> <Button android:text="OK" android:id="@+id/ok" android:layout_width="wrap_content" android:layout_height="wrap_content" /> </LinearLayout>
MainActivity
当用户点击OK按钮的时候,在Activity中会对EditText中的内容做一个合法性检测,如果检测到用户的输入不合法,则使用setError方法设置相应的提示信息。public class TextInputLayoutActivity extends AppCompatActivity implements View.OnClickListener { private TextInputEditText mEditText; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_text_input_layout); mEditText = (TextInputEditText) findViewById(R.id.editText); findViewById(R.id.ok).setOnClickListener(this); } @Override public void onClick(View view) { if (isInputValid()) { mEditText.setError(null); } else { mEditText.setError("输入错误"); } } private boolean isInputValid() { if (mEditText != null) { int len = mEditText.getText().toString().length(); if (len == 6) { return true; } } return false; } }
如下图
相关文章推荐
- 使用C++实现JNI接口需要注意的事项
- Android IPC进程间通讯机制
- Android Manifest 用法
- [转载]Activity中ConfigChanges属性的用法
- Android之获取手机上的图片和视频缩略图thumbnails
- Android之使用Http协议实现文件上传功能
- Android学习笔记(二九):嵌入浏览器
- android string.xml文件中的整型和string型代替
- i-jetty环境搭配与编译
- android之定时器AlarmManager
- android wifi 无线调试
- Android Native 绘图方法
- Android java 与 javascript互访(相互调用)的方法例子
- android 代码实现控件之间的间距
- android FragmentPagerAdapter的“标准”配置
- Android"解决"onTouch和onClick的冲突问题
- android:installLocation简析
- android searchView的关闭事件
- SourceProvider.getJniDirectories