这两个控件都可以在输入的时候进行提醒,差别在于MultiAutoCompleteTextView可以在输入框一直增加新的选择值,其编写方式也有些不同,一定要setTokenizer,否则会出错。见代码
- package sucre.android;
- import android.app.Activity;
- import android.os.Bundle;
- import android.widget.ArrayAdapter;
- import android.widget.AutoCompleteTextView;
- import android.widget.MultiAutoCompleteTextView;
- /**
- * AutoCompleteTextView与MultiAutoCompleteTextView
- * @author qiaolei
- *
- */
- public class EX04_13 extends Activity {
- /** Called when the activity is first created. */
- private static final String[] autoStr = new String[]{"a","abc","abcd","abcde"};
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,autoStr);
- /*AutoCompleteTextView myAutoCompleteTextView = (AutoCompleteTextView)findViewById(R.id.myAutoCompleteTextView);
- myAutoCompleteTextView.setAdapter(adapter);*/
- MultiAutoCompleteTextView ad = (MultiAutoCompleteTextView)findViewById(R.id.myMultiAutoCompleteTextView);
- ad.setAdapter(adapter);
- ad.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
- }
- }
代码中的CommaTokenizer类,结果会将原本选择框里的值往后加逗号及空白。