使用autoCompleteTextView以及MultiAutoCompleteTextView实现自动匹配输入内容
2016-01-20 19:32
826 查看
一:autoCompleteTextView
1:控件属性设置:
注意添加:android:completionThreshold="1"来设置输入几个字符的时候开始显示匹配的内容
2:MainActive文件设置
2:MultiAutoCompleteTextView使用
与AotoCompleteTextView不同的就是他可以在同一个输入框中实现多个匹配
需要多设置一个分隔符,macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
其他同上
主文件:
2:控件属性文件
1:控件属性设置:
注意添加:android:completionThreshold="1"来设置输入几个字符的时候开始显示匹配的内容
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" 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=".MainActivity" > //completionThreshould 定义输入几个字符的时候开始匹配 <AutoCompleteTextView android:completionThreshold="1" android:id="@+id/autoCompleteTextView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:hint="@string/name" > <requestFocus /> </AutoCompleteTextView> </RelativeLayout>
2:MainActive文件设置
package com.example.demo2; import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; public class MainActivity extends Activity { private AutoCompleteTextView acTv; private String[] res = {"北京1", "北京2", "北京3", "上海", "上徐", "上海2"}; @Override /* * 1: 新建一个适配器 * 2: 初始化数据源,用这里的数据源去匹配文本框输入的内容 * 3: 将adpter与当前AutoCompleteTextView类的对象绑定 * @see android.app.Activity#onCreate(android.os.Bundle) */ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //根据id查找AutoCompleteTextView对象 acTv = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1); //然后创建一个适配器用于匹配 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, res); acTv.setAdapter(adapter);//将adapter这个适配器与AutoCompleteTextView对象(控件)绑定 } }
2:MultiAutoCompleteTextView使用
与AotoCompleteTextView不同的就是他可以在同一个输入框中实现多个匹配
需要多设置一个分隔符,macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
其他同上
主文件:
package com.example.demo2; import android.app.Activity; import android.os.Bundle; import android.widget.ArrayAdapter; import android.widget.AutoCompleteTextView; import android.widget.MultiAutoCompleteTextView; public class MainActivity extends Activity { private AutoCompleteTextView acTv; private MultiAutoCompleteTextView macTextView; private String[] res = {"北京1", "北京2", "北京3", "上海", "上徐", "上海2"}; @Override /* * 1: 新建一个适配器 * 2: 初始化数据源,用这里的数据源去匹配文本框输入的内容 * 3: 将adpter与当前AutoCompleteTextView类的对象绑定 * @see android.app.Activity#onCreate(android.os.Bundle) */ protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); //根据id查找AutoCompleteTextView对象 acTv = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1); //然后创建一个适配器用于匹配 ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, res); acTv.setAdapter(adapter);//将adapter这个适配器与AutoCompleteTextView对象(控件)绑定 macTextView = (MultiAutoCompleteTextView) findViewById(R.id.multiAutoCompleteTextView1); //把 MultiAutoCompleteTextView和适配器绑定 macTextView.setAdapter(adapter); //设置以逗号分隔符为结束的符号 macTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); } }
2:控件属性文件
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" 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=".MainActivity" > //completionThreshould 定义输入几个字符的时候开始匹配 <AutoCompleteTextView android:completionThreshold="1" android:id="@+id/autoCompleteTextView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:layout_alignParentRight="true" android:hint="@string/name" > <requestFocus /> </AutoCompleteTextView> <MultiAutoCompleteTextView android:completionThreshold="1" android:id="@+id/multiAutoCompleteTextView1" android:layout_margin="10dp" android:layout_below="@id/autoCompleteTextView1" android:layout_width="match_parent" android:layout_height="wrap_content" android:hint="@string/name" /> </RelativeLayout>
相关文章推荐
- linux grep命令详解
- Quartz2.2.1开发问题
- Quartz2.2.1开发问题
- 修改apache服务器根目录
- 关于NSCache的使用
- Netty使用Marshalling传输信息
- springMVC 接收数组参数,mybatis 接收数组参数,mybatis批量插入/批量删除案例
- Synchronized
- 深度学习框架Caffe的编译安装
- 《魔兽世界》的魅力究竟在哪儿?
- mysql + SpringMVC + MyBatis中批量插入实例以及@Param注解的用法
- LeetCode Edit Distance
- APUE读书笔记
- Xenomai 安装准备工作
- linux read命令详解
- Python中使用urllib2模块编写爬虫的简单上手示例
- 综合笔记
- preventDefault()
- 响应式和自适应区别
- Java--读写文件综合