Android自动编辑文本框(AutoCompleteTextView)使用方法详解
作者:爱潜水的猪 时间:2023-02-05 18:17:53
自动编辑文本框(AutoCompleteTextView)继承自EditText,能够接受用户的输入编辑,但是有这自己的特色功能:输入一定的字符以后会弹出下拉列表提示供用户选择,用户选择之后会自动填充文本框。这项功能正如浏览器的输入提示:
由于自动编辑文本框继承于EditText,它能够支持EditText的全部属性,但是在输入提示方面它有着自己的独特属性:
android:completionHint 为弹出下拉菜单指定提示标题
android:completionThreshold 指定输入多少个字符以后会出现提示
android:dropDownHeight 指定下拉菜单的高度
android:dropDownHorizontalOffset 指定下拉菜单和文本框的水平偏移
android:dropDownVerticalOffset 指定下拉带单和文本框的垂直偏移
android:dropDownWidth 指定下拉菜单宽度
android:popupBackground 为下拉菜单设置背景
输入提示框中会有我们输入信息的补充,因此我们需要给输入提示框配置信息,这是要通过适配器实现。下面我们创建一个带输入提示框的AutoCompleteTextView
实例操作:
1.在可视化界面拖入一个自动完成编辑框,并设置2个字符弹出提示和编辑框出布局正中间
<AutoCompleteTextView
android:id="@+id/autoCompleteTextView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="center"
android:completionThreshold="2"
android:hint="请输入"
android:ems="10" >
<requestFocus />
</AutoCompleteTextView>
2.创建适配器。适配器可以通过java数组或资源文件创建,这里我们采用资源文件创建适配器
资源文件:
<?xml version="1.0" encoding="UTF-8"?>
<resources >
<string-array name="data">
<item >nanjing-xuanwu</item>
<item >nanjing-jiangning</item>
<item >nanjing-qixia</item>
<item >nanjing-jianye</item>
</string-array>
</resources>
java代码:
AutoCompleteTextView atc = (AutoCompleteTextView)findViewById(R.id.autoCompleteTextView1);//获取组件
ArrayAdapter<CharSequence> aa = ArrayAdapter.createFromResource(this, R.array.data,R.layout.support_simple_spinner_dropdown_item);//创建
3.绑定适配器
atc.setAdapter(aa);
运行结果
总结:对于AutoCompletionEditText使用,主要是完善它的提示功能。提示词使用适配器加入,对于适配器创建,主要有通过资源文件创建和java字符串创建两种。
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
Android 图片切换器(dp、sp、px) 的单位转换器
![](https://img.aspxhome.com/file/2023/3/138913_0s.jpg)
Java中this关键字的用法详解
![](https://img.aspxhome.com/file/2023/6/72556_0s.jpg)
Android开发笔记之:返回键的复写onBackPressed()介绍
C#解决文件被占用资源,无法删除或修改的方法
WPF ProgressBar实现实时进度效果
![](https://img.aspxhome.com/file/2023/0/102230_0s.png)
Android多媒体应用使用SoundPool播放音频
![](https://img.aspxhome.com/file/2023/8/123348_0s.jpg)
Java实现的具有GUI的校园导航系统的完整代码
![](https://img.aspxhome.com/file/2023/2/104012_0s.png)
Android控件之RatingBar自定义星级评分样式
![](https://img.aspxhome.com/file/2023/3/93303_0s.png)
C# 正则表达式常用的符号和模式解析(最新推荐)
![](https://img.aspxhome.com/file/2023/5/113775_0s.png)
聊聊Redis二进制数组Bitmap
盘点几种常见的java排序算法
![](https://img.aspxhome.com/file/2023/0/78260_0s.png)
C#及WPF获取本机所有字体和颜色的方法
Flutter 分页功能表格控件详细解析
![](https://img.aspxhome.com/file/2023/2/104692_0s.gif)
mybatis-plus用insertBatchSomeColumn方法批量新增指定字段
![](https://img.aspxhome.com/file/2023/0/61250_0s.png)
C# 键盘Enter键取代Tab键实现代码
![](https://img.aspxhome.com/file/2023/7/68107_0s.png)
Java微信公众平台开发(8) 多媒体消息回复
![](https://img.aspxhome.com/file/2023/2/76542_0s.jpg)
C# CSV文件读写的实现
Java类和成员上的一些方法实例代码
Android+SQLite数据库实现的生词记事本功能实例
Java 集合的Contains和Remove方法
![](https://img.aspxhome.com/file/2023/6/132126_0s.jpg)