AutoCompleteTextView
completionThreshold设置输入字符长度开始匹配
XML文件设置
<android.support.v7.widget.AppCompatAutoCompleteTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/text_view2"
android:hint="输入内容"
android:layout_below="@+id/text_view1"
android:completionThreshold="2"/>
Activity文件代码
public class MainActivity extends AppCompatActivity {
private AutoCompleteTextView textView;
private ArrayAdapter<String> adapter;
private String[] city = {"beijing", "beijing2", "shanghai2", "shanghai1"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/**
* 1初始化控件
* 2获得一个数据源,这是是一个字符串数组
* 3获得适配器对象
* 4绑定适配器对象
* */
textView = (AutoCompleteTextView) findViewById(R.id.text_view2);
//设置开始匹配最小字符
textView.setThreshold(2);
//获得adapter实例
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, city);
//绑定适配器
textView.setAdapter(adapter);
}
}
MultiAutoCompleteTextView
可以支持选择多个值,将输入的值用`;“隔开后可以进行再次匹配
可以用于群发邮件和短信的时候
multiTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
/**
* 1初始化控件
* 2获得一个数据源,这是是一个字符串数组
* 3获得适配器对象
* 4绑定适配器对象
* 5设置分隔符
* */
multiTextView = (MultiAutoCompleteTextView) findViewById(R.id.text_view3);
multiTextView.setAdapter(adapter);
//设置分隔符
multiTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());