Android中的AutoCompleteTextView可以实现文本输入框的自动补全功能,和网页上的输入框使用Ajax时有点像,使用这个功能时,需指定一个adapter来设置补全的
![](https://i-blog.csdnimg.cn/blog_migrate/81583815982329f354d0c761e7c27d21.gif)
url:
http://greatverve.cnblogs.com/archive/2012/01/04/android-auto-complete.html
![](https://i-blog.csdnimg.cn/blog_migrate/81583815982329f354d0c761e7c27d21.gif)
<?
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"
>
<!-- 定义一个自动完成文本框,指定输入一个字符后进行提示 -->
<!-- android:dropDownHorizontalOffse 设置下拉列表的水平偏移 -->
< AutoCompleteTextView
android:id ="@+id/auto"
android:layout_width ="fill_parent"
android:layout_height ="wrap_content"
android:completionHint ="请选择您最喜欢的歌曲"
android:dropDownHorizontalOffset ="20dp"
android:completionThreshold ="1" /> <!-- 指明当输入多少个字的时候给出响应的提示 -->
</ LinearLayout >
< LinearLayout xmlns:android ="http://schemas.android.com/apk/res/android"
android:orientation ="vertical"
android:layout_width ="fill_parent"
android:layout_height ="fill_parent"
>
<!-- 定义一个自动完成文本框,指定输入一个字符后进行提示 -->
<!-- android:dropDownHorizontalOffse 设置下拉列表的水平偏移 -->
< AutoCompleteTextView
android:id ="@+id/auto"
android:layout_width ="fill_parent"
android:layout_height ="wrap_content"
android:completionHint ="请选择您最喜欢的歌曲"
android:dropDownHorizontalOffset ="20dp"
android:completionThreshold ="1" /> <!-- 指明当输入多少个字的时候给出响应的提示 -->
</ LinearLayout >
public
class AutoCompleteTextViewTest
extends Activity
{
// 定义字符串数组,作为提示的文本
String[] books = new String[]{
"孙燕姿-hey jude",
"孙燕姿-the moment",
"孙燕姿-tonight I feel close to you",
"孙燕姿-leave me alone"
};
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 创建一个ArrayAdapter,封装数组
ArrayAdapter<String> aa = new ArrayAdapter<String>(
this,
android.R.layout.simple_dropdown_item_1line,
books);
AutoCompleteTextView actv = (AutoCompleteTextView)
findViewById(R.id.auto);
// 设置Adapter
actv.setAdapter(aa);
}
}
{
// 定义字符串数组,作为提示的文本
String[] books = new String[]{
"孙燕姿-hey jude",
"孙燕姿-the moment",
"孙燕姿-tonight I feel close to you",
"孙燕姿-leave me alone"
};
@Override
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// 创建一个ArrayAdapter,封装数组
ArrayAdapter<String> aa = new ArrayAdapter<String>(
this,
android.R.layout.simple_dropdown_item_1line,
books);
AutoCompleteTextView actv = (AutoCompleteTextView)
findViewById(R.id.auto);
// 设置Adapter
actv.setAdapter(aa);
}
}