android高级界面组件之AutoCompleteTextView

来源:互联网 发布:spring ioc 源码分析 编辑:程序博客网 时间:2024/06/05 04:52

自动完成文本框是从EditText继承而来它实际是一个文本输入框 但是它比其它输入框多了一个功能就是在用户输入一定的字符后会给出提示用户可以直接选取提示的文字增强用户体验下面对起属性和使用做简单介绍


布局文件如下:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<TextView android:layout_width="fill_parent"
android:layout_height="wrap_content" android:text="@string/hello" />
<AutoCompleteTextView android:layout_width="fill_parent"
android:layout_height="wrap_content"

           android:id="@+id/autoText"
android:completionThreshold="1" //指明当输入多少个字的时候给出响应的提示

             android:completionHint="请输入"//输入框提示


android:popupBackground="#9933CC" //设置下拉列表的背景颜色



/>






</LinearLayout>


activity类



package com.demos;


import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;


public class autoComplentTextView extends Activity {


private AutoCompleteTextView autoTextView;


@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
autoTextView = (AutoCompleteTextView) findViewById(R.id.autoText);


String[] books = new String[] { "张三", "张三", "张三", "张三", "张三", "张三" };


ArrayAdapter<String> adapter = new ArrayAdapter<String>(
autoComplentTextView.this,
android.R.layout.simple_dropdown_item_1line, books);


autoTextView.setAdapter(adapter);


}
}






说明:在使用AutoCompleteTextView的时候主要是注意为其提供一个adapter数据适配器 在很多的ui组件上面都需要我们提供一个adapter适配器大家可以多去了解一下adapter很多时候我们都要继承BaseAdapter实习我们的需求

还有些简单的属性说明

 android:dropDownVerticalOffset 设置下拉列表和文本框的垂直偏移

 android:dropDownHorizontalOffset 设置下拉列表的水平便宜
 android:dropDownWidth 设置下拉列表的宽度
 android:dropDownHeight 设置下拉列表的高度