AutoCompleteTextView自动补全控件基础详解

控件介绍:AutoCompleteTextView控件是当用户在文项目本框中输入的时候,在控件下方会显示一个类似百度的下拉提示框,提示当前与输入相匹配的选项,用户可以直接选择,方便了用户的体验。

具体开发步骤:
第一步:main.xml文件中声明一个AutoCompleteTextView控件
  
  
  
  
  1. <?xml version="1.0" encoding="utf-8"?>   
  2. <LinearLayout xmlns:android=http://schemas.android.com/apk/res/android   
  3. android:orientation="vertical"   
  4. android:layout_width="fill_parent"   
  5. android:layout_height="fill_parent"   
  6. >   
  7.     <TextView   
  8.      android:layout_width="fill_parent"   
  9.      android:layout_height="wrap_content"   
  10.      android:text="@string/hello"   
  11.      />   
  12. <!-- 声明AutoCompleteTextView控件 -->   
  13.      <AutoCompleteTextView   
  14.      android:id="@+id/autocomplete"   
  15.      android:layout_width="fill_parent"   
  16.      android:layout_height="wrap_content"   
  17.           />   
  18.  </LinearLayout>


  第二步:在layout文件夹中新建一个list_item.xml文件,用来布局AutoCompleteTextView的下拉列表的样式
 
 
  
  
  
  
  1. <?xml version="1.0" encoding="utf-8"?>   
  2. <!—指定下拉列表中每一项显示的样式(这里是自定义的)-->   
  3.     <TextView   
  4.      xmlns:android=http://schemas.android.com/apk/res/android   
  5.      android:layout_width="fill_parent"   
  6.      android:layout_height="fill_parent"   
  7.      android:padding="10dp"   
  8.      android:textSize="16sp"   
  9.      android:textColor="#000"   
  10.      >   
  11.      </TextView>   
  12.  

第三步:MainActivity中的代码

  
  
  
  
  1. package com.zwy.autocomplete.activity;   
  2. import java.util.ArrayList;   
  3. import java.util.List;   
  4. import android.app.Activity;   
  5. import android.os.Bundle;   
  6. import android.widget.ArrayAdapter;   
  7. import android.widget.AutoCompleteTextView;   
  8. public class MainActivity extends Activity {   
  9.     public void onCreate(Bundle savedInstanceState) {   
  10.         super.onCreate(savedInstanceState);   
  11.         setContentView(R.layout.main);   
  12.         AutoCompleteTextView auto = (AutoCompleteTextView) findViewById              (R.id.autocomplete);      
  13.  
  14.         //创建一个list集合,用于向AutoCompleteTextView中添加数据   
  15.         List<String> list = new ArrayList<String>();   
  16.         list.add("aaa");   
  17.         list.add("abcde");   
  18.         list.add("快乐无极限");   
  19.         //也可以创建一个数组,向AutoCompleteTextView中添加数据   
  20.         String[] COUNTRIES = new String[] { "Belgium",   
  21.                 "France""Italy""Germany""Spain","Gennbuy" };   
  22.          /**ArrayAdapter中可以放list集合也可以放数组*/   
  23.         //放list集合   
  24. /*        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,   
  25.                 R.layout.list_item, list);   
  26.         放String类型数组*/   
  27.         //第二个参数指定自己前面自定义的布局文件list_item.xml   
  28.         //第三个参数指定要自动提示的数据的来源,可以是前面定义的数组或list集合   
  29.         ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,   
  30.             R.layout.list_item, COUNTRIES);   
  31.         auto.setAdapter(adapter);//最后调用方法将数据添加到自动补全控件中   
  32.  
  33.     }   
  34.  
  35. }  

 

 

你可能感兴趣的:(职场,休闲,自动补全控件)