Android使用AutoCompleteTextView實現(xiàn)自動填充功能的案例
(1)首先實現(xiàn)AutoCompleteTextView
功能所需要的適配器數(shù)據(jù)源共有兩種方法,一種結果是手工配置的,另一匯總是通過xml文件制定的數(shù)據(jù)(當然也可以通過網(wǎng)上資源獲得)
這里只講前兩種!
(2)布局的頁面代碼都一樣如下:
<RelativeLayout 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:paddingBottom="@dimen/activity_vertical_margin" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" tools:context=".MainActivity" > <TextView android:id="@+id/textView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignParentLeft="true" android:layout_alignParentTop="true" android:layout_marginTop="34dp" android:text="所屬城市:" android:textSize="20dp" /> <AutoCompleteTextView android:id="@+id/autoCompleteTextView1" android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_alignBottom="@+id/textView1" android:layout_toRightOf="@+id/textView1" android:ems="10" android:text="" > <requestFocus /> </AutoCompleteTextView> </RelativeLayout>
(3)第一種是通過手工配置的list數(shù)據(jù)源:
package com.example.autocompletetextview; public class MainActivity extends Activity { private AutoCompleteTextView autoCompleteTextView1; private ArrayAdapter<String> adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); autoCompleteTextView1 = (AutoCompleteTextView) this .findViewById(R.id.autoCompleteTextView1); /* * 1.使用手工方式的list數(shù)組適配器 */ adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, getDataSource()); autoCompleteTextView1.setAdapter(adapter); } /* * 1.手工設置一個list數(shù)組作為數(shù)據(jù)源 */ public List<String> getDataSource() { List<String> list = new ArrayList<String>(); list.add("beijing"); list.add("beida"); list.add("beiren"); list.add("shanghai"); list.add("shangzhou"); list.add("guangzhou"); list.add("dancheng"); list.add("ningping"); list.add("zhoukou"); list.add("chengdu"); list.add("heze"); list.add("zhumadian"); list.add("luoyang"); list.add("shuanglou"); list.add("yizhong"); list.add("xindu"); return list; } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true; } }
(4)第二種是通過xml文件制定的數(shù)據(jù)源
name我們需要在/values/strings
文件下添加下邊的配置
<?xml version="1.0" encoding="utf-8"?> <resources> <string name="app_name">"AutoCompleteTextView "</string> <string name="action_settings">Settings</string> <string name="hello_world">Hello world!</string> <string-array name="countries_array"> <item>Afghanistan</item> <item>Albania</item> <item>Algeria</item> <item>American Samoa</item> <item>Andorra</item> <item>Angola</item> <item>Anguilla</item> <item>Antarctica</item> <item>Bfghanistan</item> <item>Blbania</item> <item>Blgeria</item> <item>Bmerican Samoa</item> <item>Bndorra</item> <item>Bngola</item> <item>Bnguilla</item> <item>Bntarctica</item> </string-array> </resources>
然后的類為:
package com.example.autocompletetextview; public class MainActivity extends Activity { private AutoCompleteTextView autoCompleteTextView1; private ArrayAdapter<String> adapter; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); autoCompleteTextView1 = (AutoCompleteTextView) this .findViewById(R.id.autoCompleteTextView1); /* * 2.使用xml文件來配置適配器中的數(shù)據(jù)源 */ String[] countries = getResources().getStringArray(R.array.countries_array); adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1,countries); autoCompleteTextView1.setAdapter(adapter); } @Override public boolean onCreateOptionsMenu(Menu menu) { getMenuInflater().inflate(R.menu.main, menu); return true; } }
運行的結果如下所示:
總結
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關內(nèi)容請查看下面相關鏈接
相關文章
Android 正則表達式驗證手機號、姓名(包含少數(shù)民族)、身份證號
本篇文章主要介紹了Android 正則表達式驗證手機號、姓名(包含少數(shù)民族)、身份證號的相關知識。具有很好的參考價值。下面跟著小編一起來看下吧2017-04-04Android SDK命令行工具Monkey參數(shù)及使用解析
這篇文章主要介紹了Android SDK命令行工具Monkey參,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值數(shù)及使用解析,需要的朋友可以參考下2020-10-10android教程viewpager自動循環(huán)和手動循環(huán)
這篇文章主要介紹了android的viewpager自動循環(huán)和手動循環(huán)示例,需要的朋友可以參考下2014-02-02