Android 系统搜索框 如何限制输入字数长度?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android 系统搜索框 如何限制输入字数长度?相关的知识,希望对你有一定的参考价值。
项目里用的是 系统搜索框 也就是配置 searchable.xml 的那种 可是没有得到EditText的接口 无法限制输入的字数长度 有没有什么解决方案?
android 搜索框就是一个EditText输入控件,或者是EditText的子类
长度限制方式有以下几种:
方法一:
在 xml 文件中设置文本编辑框属性作字符数限制
如:android:maxLength="10" 即限制最大输入字符个数为10
方法二:
在代码中使用InputFilter 进行过滤
//editText.setFilters(new InputFilter[]new InputFilter.LengthFilter(20)); 即限定最大输入字符数为20
示例代码如下:
public class TextEditActivity extends Activity/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState)
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
EditText editText = (EditText)findViewById(R.id.entry);
editText.setFilters(new InputFilter[]new InputFilter.LengthFilter(20));
方法三:
利用 TextWatcher 进行限制,TextWatcher是注册一个内存输入的改变事件,当你的输入框输入字符和删除字符都会触发
实现代码如下:
package cie.textEdit;import android.text.Editable;
import android.text.Selection;
import android.text.TextWatcher;
import android.widget.EditText;
/*
* 监听输入内容是否超出最大长度,并设置光标位置
* */
public class MaxLengthWatcher implements TextWatcher
private int maxLen = 0;
private EditText editText = null;
public MaxLengthWatcher(int maxLen, EditText editText)
this.maxLen = maxLen;
this.editText = editText;
public void afterTextChanged(Editable arg0)
// TODO Auto-generated method stub
public void beforeTextChanged(CharSequence arg0, int arg1, int arg2,
int arg3)
// TODO Auto-generated method stub
public void onTextChanged(CharSequence arg0, int arg1, int arg2, int arg3)
// TODO Auto-generated method stub
Editable editable = editText.getText();
int len = editable.length();
if(len > maxLen)
int selEndIndex = Selection.getSelectionEnd(editable);
String str = editable.toString();
//截取新字符串
String newStr = str.substring(0,maxLen);
editText.setText(newStr);
editable = editText.getText();
//新字符串的长度
int newLen = editable.length();
//旧光标位置超过字符串长度
if(selEndIndex > newLen)
selEndIndex = editable.length();
//设置新光标所在的位置
Selection.setSelection(editable, selEndIndex);
有关EditText 即Android输入框的更多用法,建议查看官网API文档
kendoui的grid输入框怎么做输入限制
参考技术A 你是想让你的gridview 变成那样吧 kendo ui 里面有,但要自己研究如何绑定数据源 demos.kendoui.com/web/grid/editing-custom.html 看 editing custom editor 那个demo 点击上去就可以修改 jquery minui 是国产的 要花钱的买的 还没有破....本回答被提问者采纳以上是关于Android 系统搜索框 如何限制输入字数长度?的主要内容,如果未能解决你的问题,请参考以下文章