AutoCompleteTextView 支持的属性
AutoCompleteTextView组件继承自EditText(EditText又继承自TextView),所以它支持TextView组件提供的属性,同时,该组件还支持如下属性:
android:completionHint:
用于为弹出的下拉菜单指定提示标题。
android:completionThreshold:
用于指定用户至少输入几个字符才会显示提示。
android:dropDownHeight:
用于指定下拉菜单的高度。
android:dropDownHorizontalOffset:
用于指定下拉菜单与文本之间的水平偏移。下拉菜单默认与文本框左对齐。
android:dropDownVerticalOffset:
用于指定下拉菜单与文本之间的垂直偏移。下拉菜单默认紧跟文本框。
android:dropDownWidth:
用于指定下拉菜单的宽度。
android:popupBackground:
用于为下拉菜单设置背景。
XML
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context="com.dezai.autocompletetextviewtest.MainActivity">
<AutoCompleteTextView
android:id="@+id/auto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:completionHint="请选择您喜欢的图书"
android:completionThreshold="1"/>
<MultiAutoCompleteTextView
android:id="@+id/mauto"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:completionThreshold="1"/>
</LinearLayout>
JAVA
package com.dezai.autocompletetextviewtest;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
import android.widget.MultiAutoCompleteTextView;
public class MainActivity extends AppCompatActivity {
AutoCompleteTextView actv;
MultiAutoCompleteTextView mauto;
String[] books=new String[]{
"david",
"dezai",
"dehui",
"delao"
};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//创建一个ArrayAdapter封装数组
ArrayAdapter<String> aa=new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line,books);
actv=(AutoCompleteTextView)findViewById(R.id.auto);
//设置Adapter
actv.setAdapter(aa);
mauto=(MultiAutoCompleteTextView)findViewById(R.id.mauto);
//设置Adapter
mauto.setAdapter(aa);
//为MultiAutoCompleteTextView设置分隔符
mauto.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
}
}