【Android】开发入门:AutoCompleteTextView控件使用方法
当我们在百度首页输入关键字时,是不是会弹出下拉提示框?这个方便了用户搜索习惯,当然安卓app也可以实现此功能,那android是如何开发的呢?其实也很简单,android中用到了AutoCompleteTextView控件,完美的实现在表单框中输入字符弹出关键字。具体有2种实现方法。
方法一:在Activity中实现自动弹出下拉提示框方法。
1、首先还是需要建立View视图。
<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_marginLeft="28dp"
android:layout_marginTop="23dp"
android:text="所属城市" />
<AutoCompleteTextView
android:id="@+id/auto"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/auto"
android:layout_alignBottom="@+id/auto"
android:layout_toRightOf="@+id/auto"
android:ems="10"/>
2、创建实现自动弹出下拉提示框的Activity,并实现获取提示框内所需的数据列表函数getDataSource()。
private List<String> getDataSource() {
List<String> list=new ArrayList<String>();
list.add("Janpan");
list.add("China");
list.add("Albania");
list.add("American");
list.add("Anguilla");
list.add("Antarctica");
return list;
}
3、在onCreate中设置监听器即可完成。
autoTextView=(AutoCompleteTextView)this.findViewById(R.id.auto);
adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, getDataSource());
autoTextView.setAdapter(adapter);
方法二:在XML中实现自动弹出下拉提示框方法。
1、方法二的第一步和方法一的第一步相同。(查看)
2、在资源文件string.xml中创建下拉提示框所需的数据列表。
<string-array name="citys">
<item>Janpan</item>
<item>China</item>
<item>Albania</item>
<item>American</item>
<item>Anguilla</item>
<item>Antarctica</item>
</string-array>
3、在onCreate中获取资源文件string.xml中的数据列表,如果是获取网络数据,需要用到json数据解析,并设置监听器即可完成。
String[] countries=getResources().getStringArray(R.array.citys);//引用资源文件string中的数据,如果获取网络数据,需要json数据解析
adapter=new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, countries);
autoTextView.setAdapter(adapter);