在android中咱們可使用AutoCompleteTextView來實現自動提示功能。
咱們將須要進行提示的數據放入ArrayAdapter中,而後用AutoCompleteTextView的setAdapter方法,就可讓AutoCompleteTextView具備自動完成提示的功能了.
autocomplete.xml代碼
- <?xml version="1.0" encoding="utf-8"?>
- <LinearLayout
- xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- android:orientation="vertical"
- >
- <AutoCompleteTextView android:id="@+id/autoComplete"
- android:layout_width="fill_parent"
- android:layout_height="wrap_content">
- </AutoCompleteTextView>
- </LinearLayout>
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical"
>
<AutoCompleteTextView android:id="@+id/autoComplete"
android:layout_width="fill_parent"
android:layout_height="wrap_content">
</AutoCompleteTextView>
</LinearLayout>
java代碼
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.ArrayAdapter;
- import android.widget.AutoCompleteTextView;
-
- /**
- * 自動完成文本
- * @author daist
- * @date 2010-9-25
- */
- public class AutoCompleteActivity extends Activity {
-
- private static final String[] COUNTRIES = {"China","Russia","Germany",
- "Ukraine","Belarus","USA","China1","China2","USA1"};
-
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.autocomplete);
- //建立一個ArrayAdapter
- ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
- android.R.layout.simple_dropdown_item_1line,COUNTRIES);
- //獲取AutoCompleteTextView對象
- AutoCompleteTextView autoComplete = (AutoCompleteTextView) findViewById(R.id.autoComplete);
- //將AutoCompleteTextView與ArrayAdapter進行綁定
- autoComplete.setAdapter(adapter);
- //設置AutoCompleteTextView輸入1個字符就進行提示
- autoComplete.setThreshold(1);
- }
- }
import android.app.Activity;
import android.os.Bundle;
import android.widget.ArrayAdapter;
import android.widget.AutoCompleteTextView;
/**
* 自動完成文本
* @author daist
* @date 2010-9-25
*/
public class AutoCompleteActivity extends Activity {
private static final String[] COUNTRIES = {"China","Russia","Germany",
"Ukraine","Belarus","USA","China1","China2","USA1"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.autocomplete);
//建立一個ArrayAdapter
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line,COUNTRIES);
//獲取AutoCompleteTextView對象
AutoCompleteTextView autoComplete = (AutoCompleteTextView) findViewById(R.id.autoComplete);
//將AutoCompleteTextView與ArrayAdapter進行綁定
autoComplete.setAdapter(adapter);
//設置AutoCompleteTextView輸入1個字符就進行提示
autoComplete.setThreshold(1);
}
}
運行效果