欢迎使用CSDN-markdown编辑器

来源:互联网 发布:胡歌幽默知乎 编辑:程序博客网 时间:2024/05/22 03:21

Android组件之AutoCompleteTextView自动完成文本框

自动完成文本框(AutoCompleteTextView),用于实现允许用户输入一定字符后,显示一个下拉菜单,供用户从中选择,当用户选择某个选项后,按用户选择自动填写该文本框,其基本语法格式如下:

XML属性 描述 android:completionHint 用于为弹出的下拉菜单指定提示标题 android:completionThreshold 用于指定用户至少输入几个字符才会显示提示 android:dropDownHeight 用于指定下拉菜单的高度 android:dropDownHorizontalOffset 用于指定下拉菜单与文本之间的水平偏移。下拉菜单默认与文本框左对齐 android:dropDownVerticalOffset 用于指定下拉菜单与文本之间的垂直偏移。下拉菜单默认紧跟文本框 android:dropDownWidth 用于指定下拉菜单的宽度 android:popupBackground 用于为下拉菜单设置背景

修改新建项目的res/layout目录下的布局文件activity_main.xml,在布局中新增一个代码如下:

<AutoCompleteTextView        android:id="@+id/autoCompleteTextView1"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:completionHint="@string/insert_content_to_search"/>

在主活动MainActivity中,定义一个字符串字符常量,用于在下拉菜单的列表项中显示,具体代码如下:

private static final String[] LYRICS = new String[] {"床前明月光", "疑是地上霜",            "举头望明月", "低头思故乡"};

在主活动的onCreate()方法中,首先获取布局文件添加的自动完成文本框,然后创建一个保存下拉菜单中要显示的列表项的ArrayAdapter适配器,最后将该适配器与自动完成文本框相关联,关键代码如下:

acTextView = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView1);ArrayAdapter<String> adapter1 = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, LYRICS);        acTextView.setAdapter(adapter1);
原创粉丝点击