本篇文章主要介绍了"Android EditText输入最大长度限制如何给用户以友好的提示",主要涉及到方面的内容,对于Android开发感兴趣的同学可以参考一下: 我们知道EditText有个属性android:maxLength="xxx" ,可以设置EditText的最大长度。也可以用如下代码设置长度,editText...
我们知道EditText有个属性android:maxLength="xxx" ,可以设置EditText的最大长度。
也可以用如下代码设置长度,editText.setFilters( new InputFilter[]{ new InputFilter.LengthFilter( 50 )});
然后我写个小示例,xml布局如下:
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent" android:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin"><TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:text="请输入:"/><EditText android:id="@+id/editText" android:layout_width="fill_parent" android:layout_height="wrap_content" android:maxLength="15"/></LinearLayout>
View Code
设置最大长度为15
MainActivity 如下:
package com.example.edittext;import android.app.Activity;import android.os.Bundle;import android.text.Editable;import android.text.TextWatcher;import android.util.Log;import android.view.Gravity;import android.widget.EditText;import android.widget.Toast; publicclass MainActivity extends Activity { private EditText editText = null; private Toast toast = null; @Override publicvoid onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); editText = (EditText)findViewById(R.id.editText); editText.addTextChangedListener(textWatcher); } private TextWatcher textWatcher = new TextWatcher() { @Override publicvoid beforeTextChanged(CharSequence s, int start, int count, int after) { //TODO } @Override publicvoid onTextChanged(CharSequence s, int start, int before, int count) { //TODO } @Override publicvoid afterTextChanged(Editable s) { Log.d("TAG","afterTextChanged "+"str="+s.toString()); int len = s.toString().length(); if(len>=15){ toast = Toast.makeText(getApplicationContext(), "字符不能超过15个", 1000); toast.setGravity(Gravity.TOP, 0, 235); toast.show(); } } }; }