热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

Android自动提示控件:AutoCompleteTextView和MultiAutoCompleteTextView

在输入框中输入我们想要输入的信息就会出现其他与其相关的提示信息,这种效果在Android中是用AutoCompleteTextView实现的。一、AutoCompleteTextView:单一匹配

在输入框中输入我们想要输入的信息就会出现其他与其相关的提示信息,这种效果在Android中是用AutoCompleteTextView实现的。

一、AutoCompleteTextView:单一匹配   MultiAutoCompleteTextView:多个匹配

二、常用属性

AutoCompleteTextView常用属性
android:completionHint设置出现在下拉菜单中的提示标题
android:completionThreshold设置用户至少输入多少个字符才会显示提示
android:dropDownHorizontalOffset下拉菜单于文本框之间的水平偏移。默认与文本框左对齐
android:dropDownHeight下拉菜单的高度
android:dropDownWidth下拉菜单的宽度
android:singleLine单行显示
android:dropDownVerticalOffset垂直偏移量

三、使用

 

     

 

 

 

 

  

1、xml文件中添加布局,设置属性
2、初始化控件
3、初始化数据
4、配置adapater
5、绑定adapater

xml



xmlns:app="http://schemas.android.com/apk/res-auto"
android:layout_width
="match_parent"
android:layout_height
="match_parent">

<AutoCompleteTextView
android:layout_width
="match_parent"
android:layout_height
="wrap_content"
android:completionThreshold
="1"
android:id
="@+id/acTv"
android:hint
="请输入内容"
/>


<MultiAutoCompleteTextView
android:layout_width
="match_parent"
android:layout_height
="wrap_content"
android:completionThreshold
="1"
android:id
="@+id/macTV"
android:layout_below
="@+id/acTv"
android:layout_marginTop
="20dp"
/>


 

code

public class MainActivity extends AppCompatActivity {
private AutoCompleteTextView autoCompleteTextView;
private MultiAutoCompleteTextView multiAutoCompleteTextView;

private String[] datas={"android1","android2","android3","android4",
"java1","java2","java3","java4",};

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
initView();
//初始化视图
initTV();//设置autoCompleteTextView和multiAutoCompleteTextView

}

private void initTV() {
// 配置设配器
ArrayAdapter arrayAdapter = new ArrayAdapter(
this, android.R.layout.simple_expandable_list_item_1, datas);
//设置adapter
autoCompleteTextView.setAdapter(arrayAdapter);


//设置adapter
multiAutoCompleteTextView.setAdapter(arrayAdapter);
//设置以逗号为分隔符
multiAutoCompleteTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
}



private void initView() {
autoCompleteTextView
= (AutoCompleteTextView) findViewById(R.id.acTv);
multiAutoCompleteTextView
= (MultiAutoCompleteTextView) findViewById(R.id.macTV);

}
}

 


推荐阅读
author-avatar
客官真的真的不可以
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有