8——动态自动匹配文字输入内容

例如百度搜索时候,会出现一个下拉列表框,提供候选项。
此内容就是动态匹配输入的内容。

AutoCompleteTextView

1. 特有属性

android:completionThreshold="2"  

设置输入多少字符时开始自动匹配。除此之外的的属性参考TextView

2. 开始实现

2.1 初始化一个AutoCompleteTextView

<AutoCompleteTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:hint="请输入关键词"
android:id="@+id/autoCompleteTextView"
/>

在类中声明并找到该控件。

private AutoCompleteTextView acTextView = null;
......
acTextView = (AutoCompleteTextView) findViewByIdR.id.autoCompleteTextView);

2.2 初始化一个适配器

private String[] res = {"beijing1", "beijing2", "beijing3", "shanghai1", "shanghai2"};

ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, res);
acTextView.setAdapter(adapter);

这样既可实现一个简单的提示。
注意,候选的项目中只显示和关键字匹配的项。

MultiAutoCompleteTextView

1. 功能

可支持选择多个值(在多次输入的情况下),用分隔符分开,并且在每个值选中的时候再次输入时都可自动去匹配。适用于群发短信、邮件。

2. 特有属性

android:completionThreshold="2" 

3. 设置分隔符

mtxt.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); // 以逗号作为分隔符

4. 实现方法大致如上AutoCompleteTextView

posted @ 2016-07-23 23:28  Ben-X  阅读(309)  评论(0编辑  收藏  举报