自动提示输入内容要通过下面两个控件实现:AutoCompleteTextView和MultiAutoCompleteTextView,实现方法如下:
先看效果:
新建工程
在main.xml布局文件中添加相关控件,代码如下:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/hello" />
<AutoCompleteTextView
android:id="@+id/myAutoCompleteTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
<MultiAutoCompleteTextView
android:id="@+id/myMultiAutoCompleteTextView"
android:layout_width="fill_parent"
android:layout_height="wrap_content" />
</LinearLayout>
然后在java文件中添加java代码,参考代码如下:
public class AutoCompleteTextViewTestActivity extends Activity {
private AutoCompleteTextView mAutoCompleteTextView;
private MultiAutoCompleteTextView mMultiAutoCompleteTextView;
private static final String[] autoString = { "an", "and",
"android","android sys","android system"};
private ArrayAdapter<String> adapter;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line, autoString);
mAutoCompleteTextView = (AutoCompleteTextView) findViewById(R.id.myAutoCompleteTextView);
mAutoCompleteTextView.setAdapter(adapter);
mMultiAutoCompleteTextView = (MultiAutoCompleteTextView) findViewById(R.id.myMultiAutoCompleteTextView);
mMultiAutoCompleteTextView.setAdapter(adapter);
mMultiAutoCompleteTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
}
}
运行即可看到效果