AutoCompleteTextView的功能类似于百度或者Google在搜索栏输入信息的时候,弹出的与输入信息接近的提示信息。 当然这里要要用到一些适配器 在Android中提供了两智能输入框,它们是MultiAutoCompleteTextView、AutoCompleteTextView。它们的功能大致一样,它和AutoCompleteTextView的区别就是MultiAutoCompleteTextView可以在输入框中一直增加新的选取值。编写方式也有所不同,在进行setAdapter之后还需要调用setTokenizer() 。下面详细介绍一下。 一、AutoCompleteTextView 1.简介 一个可编辑的文本视图,当用户输入信息后弹出提示。提示列表显示在一个下拉菜单中,用户可以从中选择一项,以完成输入。提示列表是从一个数据适配器获取的数据。 2.重要方法 clearListSelection():清除选中的列表项 dismissDropDown():如果存在关闭下拉菜单 getAdapter():获取适配器 3.创建须知 (1)布局文件 <AutoCompleteTextView android:id="@+id/edit" android:layout_width="match_parent" android:layout_height="wrap_content" /> (2)程序 实例化适配器 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, strs); 设置适配器 edit.setAdapter(adapter); 二、MultiAutoCompleteTextView 1.简介 继承自AutoCompleteTextView,延长AutoCompleteTextView的长度,你必须要提供一个MultiAutoCompleteTextView.Tokenizer来区分不同的子串 2.重要方法 enoughToFilter():当文本长度超过阈值时过滤 performValidation():代替验证整个文本,这个子类方法验证每个单独的文字标记 setTokenizer(MultiAutoCompleteTextView.Tokenizer t); 用户正在输入时,tokenizer设置将用于确定文本相关范围内 3.使用须知 (1)布局文件 <MultiAutoCompleteTextView android:id="@+id/edit1" android:layout_width="match_parent" android:layout_height="wrap_content" /> (2)程序 实例化适配器 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, strs); 设置适配器 edit.setAdapter(adapter); 确定范围 edit1.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()) 下面是个例子 AutoCommitTest.java Java代码 main.xml Java代码 运行结果如下: ![]() ![]() ![]() |
AutoCompleteTextView(自动提示)
最新推荐文章于 2019-09-07 17:03:00 发布