AutoCompleteTextView是一个可编辑的文本,自动显示与用户输入字符串部分匹配和位置匹配的字符串,从中进行选择。
介绍几个方法:
1.setAdapter()
自动完成文本框设置适配器,显示能匹配字符串。
2.setThreshold()
输入多少个字符后开始匹配。
3.setThreshold()
参数为字符串,用户输入的字符具有匹配项时,显示匹配项,并显示该提示信息。
4.setDropDownBackgroundResource()与setDropDownBackgroundDrawable()
设置提示框的背景。
小实例:
MainActivity.java
public class MainActivity extends Activity {
AutoCompleteTextView autoCompleteTextView;
String[] str = { "peach", "Pear", "Banana", "honeydew", "orange",
"tangerine" };
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
autoCompleteTextView = (AutoCompleteTextView) findViewById(R.id.myview);
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(
MainActivity.this, android.R.layout.simple_dropdown_item_1line,
str);
//出入3个字符后,开始匹配
autoCompleteTextView.setThreshold(3);
//提示信息
autoCompleteTextView.setCompletionHint("选择一项");
//背景
autoCompleteTextView.setDropDownBackgroundResource(R.drawable.blue);
// autoCompleteTextView.setDropDownBackgroundDrawable(d)
autoCompleteTextView.setAdapter(arrayAdapter);
}
}
activity_main.xml
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
tools:context="${relativePackage}.${activityClass}" >
<AutoCompleteTextView
android:id="@+id/myview"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
效果图: