智能输入框 会自动弹出一个下拉框提示类似的结果

在Android中提供了两种智能输入框,它们是AutoCompleteTextView、MultiAutoCompleteTextView。它们的功能大致一样。显示效果像Google搜索一样,当你在搜索框里输入一些字符时(至少两个字符),会自动弹出一个下拉框提示类似的结果。下面详细介绍一下。 一、AutoCompleteTextView 1、简介 一个继承自EditView的可编辑的文本视图,能够实现动态匹配输入的内容。如google搜索引擎当输入文本时可以根据内容显示匹配的热门信息。 2、重要方法 clearListSelection():清除选中的列表项 dismissDropDown():如果存在关闭下拉菜单 getAdapter():获取适配器 二、MultiAutoCompleteTextView 1、简介 一个继承自AutoCompleteTextView的可编辑的文本视图,能够对用户键入的文本进行有效地扩充提示,而不需要用户输入整个内容。(用户输入一部分内容,剩下的部分系统就会给予提示)。 用户必须提供一个MultiAutoCompleteTextView.Tokenizer用来区分不同的子串。 2、重要方法 enoughToFilter():当文本长度超过阈值时过滤 performValidation():代替验证整个文本,这个子类方法验证每个单独的文字标记 setTokenizer(MultiAutoCompleteTextView.Tokenizer t):用户正在输入时,tokenizer设置将用于确定文本相关范围内 *.xml文件如下: TextViewActivity类代码如下: String[] autoString = new String[] { "联合国", "联合国安理会", "联合国五个常任理事国", "bb", "bcd", "bcdf", "Google", "Google Map", "Google Android" }; ArrayAdapter adapter = new ArrayAdapter(this, android.R.layout.simple_dropdown_item_1line, autoString); // AutoCompleteTextView AutoCompleteTextView autoCompleteTextView = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView); autoCompleteTextView.setAdapter(adapter); // MultiAutoCompleteTextView MultiAutoCompleteTextView multiAutoCompleteTextView = (MultiAutoCompleteTextView) findViewById(R.id.multiAutoCompleteTextView); multiAutoCompleteTextView.setAdapter(adapter); multiAutoCompleteTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
posted @ 2013-08-12 21:34  Dive  阅读(1745)  评论(0编辑  收藏  举报