Android使用AutoCompleteTextView实现自动填充功能的案例

发布时间:2019-08-08 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了Android使用AutoCompleteTextView实现自动填充功能的案例脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

(1)首先实现AutoCompleteTextView功能所需要的适配器数据共有两种方法,一种结果是手工配置的,另一汇总是通过XMl文件制定的数据(当然也可以通过网上资源获得)

这里只讲前两种!

(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数据源:

 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数组适配器   */  adapter = new ArrayAdapter<String>(this,   android.R.layout.simple_list_item_1, getDataSource());  autoCompleteTextView1.setAdapter(adapter);  }  /*  * 1.手工设置一个list数组作为数据源  */  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文件制定的数据源

name我们需要在/values/strings文件下添加下边的配置

 <&#63;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文件来配置适配器中的数据源   */  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;  } }

运行的结果如下所示:

Android使用AutoCompleteTextView实现自动填充功能的案例

总结

android教程
脚本网站
android studio

脚本宝典总结

以上是脚本宝典为你收集整理的Android使用AutoCompleteTextView实现自动填充功能的案例全部内容,希望文章能够帮你解决Android使用AutoCompleteTextView实现自动填充功能的案例所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。