如何将适配器设置为自动完成文本视图?

时间:2012-05-16 06:53:14

标签: android search autocompletetextview

我需要将适配器数据集设置为android中的自动完整文本视图。

2 个答案:

答案 0 :(得分:11)

创建一个String数组或从任何函数获取它并创建String的ArrayAdapter然后让适配器为您设置列表。

 String[] array={"first","second item" ,"third item"};
 AutoCompleteTextView textView;

ArrayAdapter<String> adapter;

textView = (AutoCompleteTextView) findViewById(R.id.et_search);


adapter = new ArrayAdapter<String>(PlayListActivity.this,
                        android.R.layout.simple_list_item_1, array);

                textView.setAdapter(adapter);

答案 1 :(得分:5)

AutoCompleteTextView创建一个项目并将代码粘贴到所需位置 -

<强> main.xml中

<?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:id="@+id/myautocomplete"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:completionThreshold="1"
/>
</LinearLayout>

<强> AutoCompleteTextview.java

public class AndroidAutoCompleteTextView extends Activity implements TextWatcher{

AutoCompleteTextView myAutoComplete;
String item[]={
  "January", "February", "March", "April",
  "May", "June", "July", "August",
  "September", "October", "November", "December"
};

   /** Called when the activity is first created. */
   @Override
   public void onCreate(Bundle savedInstanceState) {
   super.onCreate(savedInstanceState);
   setContentView(R.layout.main);

   myAutoComplete = (AutoCompleteTextView)findViewById(R.id.myautocomplete);

   myAutoComplete.addTextChangedListener(this);
   myAutoComplete.setAdapter(new ArrayAdapter<String>(this, android.R.layout.simple_dropdown_item_1line, item));

   }

@Override
public void afterTextChanged(Editable arg0) {
 // TODO Auto-generated method stub

}

@Override
public void beforeTextChanged(CharSequence s, int start, int count, int after) {
 // TODO Auto-generated method stub

}

@Override
public void onTextChanged(CharSequence s, int start, int before, int count) {
 // TODO Auto-generated method stub

}
}

请使用此示例。并且,弄清楚他们如何将适配器设置为AutoComplete TextView希望这会对您有所帮助。