textinputlayout是安卓5.0之后新的高级控件 就是给textview加了判断格式的功能,并可以给出错误提示 主要用于注册登录package my.qq.com.day0715; import android.os.Bundle; import android.support.design.widget.TextInputLayout; import android.support.v7.app.AppCompatActivity; import android.util.Log; import android.view.View; import android.widget.EditText; import java.util.regex.Matcher; import java.util.regex.Pattern; /** * textinputlayout是安卓5.0之后新的高级控件 * 就是给textview加了判断格式的功能,并可以给出错误提示 * 主要用于注册登录 */ public class TextInputLayoutActivity extends AppCompatActivity { private TextInputLayout textInputLayout; private EditText editText; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_text_input_layout); textInputLayout= (TextInputLayout) findViewById(R.id.TextInputLayoutActivity_ti); } public void btnclick(View view){ editText= (EditText) findViewById(R.id.TextInputLayoutActivity_et); String inputtext=editText.getText().toString(); //正则表达式 ^表示以什么开头,+表示多位,$表示以什么结束 //^[A-Za-z0-9]+$这句话就是以字母或数字开头,以数字或字母结束的多位字符串 String patternText="^[A-Za-z0-9]+$"; Pattern pattern=Pattern.compile(patternText); Matcher matcher=pattern.matcher(inputtext); boolean flag=matcher.matches(); if (flag){ Log.i("aaa","验证成功"); textInputLayout.setErrorEnabled(false); }else { Log.i("aaa","验证失败"); textInputLayout.setErrorEnabled(true); textInputLayout.setError("输入格式错误,请重新输入"); } } }
<?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" tools:context="my.qq.com.day0715.TextInputLayoutActivity"> <android.support.design.widget.TextInputLayout android:id="@+id/TextInputLayoutActivity_ti" android:layout_width="match_parent" android:layout_height="wrap_content"> <EditText android:id="@+id/TextInputLayoutActivity_et" android:layout_width="match_parent" android:layout_height="wrap_content" /> </android.support.design.widget.TextInputLayout> <Button android:id="@+id/TextInputLayoutActivity_btn" android:layout_width="match_parent" android:layout_height="wrap_content" android:text="点击验证" android:onClick="btnclick"/> </LinearLayout>
安卓5.0之后新的高级控件-------textinputlayout
最新推荐文章于 2021-05-31 01:29:46 发布