AutoCompleteTextView(单次)、MultiAutoCompleteTextView(多次)搜索自动补全

来源:互联网 发布:c语言玫瑰花效果图 编辑:程序博客网 时间:2024/06/06 02:20

转载请注明出处:http://blog.csdn.net/mr_leixiansheng/article/details/59482634

步骤:

AutoCompleteTextView

1、布局中加入AutoCompleteTextView控件,设置好参数(android:completionThreshold是设置从第几开始匹配,默认为2)

2、活动中

1)找到控件

2)设置适配器(同ListView)

3)   设置补全内容(适配器要用)

4)控件绑定适配器

MultiAutoCompleteTextView

前4步同上

5)设置 分隔符(区别)

multiAutoCompleteTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());

代码如下:

<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"xmlns:tools="http://schemas.android.com/tools"android:id="@+id/activity_main"android:layout_width="match_parent"android:layout_height="match_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"tools:context="com.example.leixiansheng.autotext.MainActivity"><!--默认第二个字符开始匹配。第一个字符开始匹配:android:completionThreshold="1"-->    <AutoCompleteTextView    android:id="@+id/auto_text"    android:hint="请输入需要匹配内容·····"    android:layout_width="match_parent"    android:layout_height="wrap_content" />    <MultiAutoCompleteTextView        android:id="@+id/mul_text"        android:hint="多选择匹配"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:layout_below="@+id/auto_text"        android:layout_alignParentLeft="true"        android:layout_alignParentStart="true"        android:layout_marginTop="37dp" /></RelativeLayout>


package com.example.leixiansheng.autotext;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.widget.ArrayAdapter;import android.widget.AutoCompleteTextView;import android.widget.MultiAutoCompleteTextView;/** * 自动补全 * 步骤: * 1、找到控件 * 2、配置适配器(同ListView) * 3、设置自动补全资源,如data * 4、控件绑定适配器 */public class MainActivity extends AppCompatActivity {    private AutoCompleteTextView autoCompleteTextView;    private MultiAutoCompleteTextView multiAutoCompleteTextView;    String[] datas = new String[]{"team", "tea", "text", "temp"            ,"see","seak","set"};    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        autoCompleteTextView = (AutoCompleteTextView) findViewById(R.id.auto_text);        multiAutoCompleteTextView = (MultiAutoCompleteTextView) findViewById(R.id.mul_text);        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, datas);        autoCompleteTextView.setAdapter(adapter);        multiAutoCompleteTextView.setAdapter(adapter);        //区别,需要设置分隔符        multiAutoCompleteTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());    }}




0 0
原创粉丝点击