这两个控件都可以在输入的时候进行提醒,差别在于MultiAutoCompleteTextView可以在输入框一直增加新的选择值,其编写方式也有些不同,一定要setTokenizer,否则会出错。见代码

  1. package sucre.android; 
  2.  
  3. import android.app.Activity; 
  4. import android.os.Bundle; 
  5. import android.widget.ArrayAdapter; 
  6. import android.widget.AutoCompleteTextView; 
  7. import android.widget.MultiAutoCompleteTextView; 
  8. /** 
  9.  * AutoCompleteTextView与MultiAutoCompleteTextView 
  10.  * @author qiaolei 
  11.  * 
  12.  */ 
  13. public class EX04_13 extends Activity { 
  14.     /** Called when the activity is first created. */ 
  15.     private static final String[] autoStr = new String[]{"a","abc","abcd","abcde"}; 
  16.     @Override 
  17.     public void onCreate(Bundle savedInstanceState) { 
  18.         super.onCreate(savedInstanceState); 
  19.         setContentView(R.layout.main); 
  20.         ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_dropdown_item_1line,autoStr); 
  21.         /*AutoCompleteTextView myAutoCompleteTextView = (AutoCompleteTextView)findViewById(R.id.myAutoCompleteTextView); 
  22.         myAutoCompleteTextView.setAdapter(adapter);*/ 
  23.         MultiAutoCompleteTextView ad = (MultiAutoCompleteTextView)findViewById(R.id.myMultiAutoCompleteTextView); 
  24.         ad.setAdapter(adapter); 
  25.         ad.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); 
  26.     } 

代码中的CommaTokenizer类,结果会将原本选择框里的值往后加逗号及空白。