AutoCompleteTextView ,自动补全(自动完成、自动提示),常见于搜索时的自动补全,例如谷歌搜索,电子词典
File: layout/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"
tools:context=".MainActivity" >
<AutoCompleteTextView
android:id="@+id/autoCompleteTv"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:completionThreshold="1"/>
</LinearLayout>
注: android:completionThreshold="1" 用户输入一个字符就会出现提示。默认的值是2,也即用户输入两个字符才会出现提示。
File:MainActivity.java
package com.jiangge.autocompletedemo;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, COUNTRIES);
AutoCompleteTextView atv = (AutoCompleteTextView) findViewById(R.id.autoCompleteTv);
atv.setAdapter(adapter);
}
private static final String[] COUNTRIES = new String[]{"he bei", "he nan", "hu bei", "hu nan"};//要显示的内容
}
注:也可以把要显示的字符串,写到一个文件中,通过
private static final String[] COUNTRIES = getResources().getStringArray(R.array.city_name_arrays);