MultiAutoCompleteTextView的使用:
该控件可支持选择多个值(在多次输入的情况下),分别用分隔符分开,并且在每个值选中的时候再次输入值时会自动去匹配。
可用在发短信,发邮件时选择联系人这种类型当中。
使用时需要执行设置分隔符方法。
设置输入多少字符时进行自动匹配
android:completionThreshold="2"
设置分隔符
mcTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
具体代码如下:
<MultiAutoCompleteTextView android:hint="请输入您的收件人" android:layout_width="match_parent" android:layout_height="wrap_content" android:completionThreshold="2" android:id="@+id/multiAutoCompleteTextView" />
public class FourActivity extends AppCompatActivity { private MultiAutoCompleteTextView mcTextView; private String[] res = {"beijing1","beijing2","beijng3","shanghai1"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_four); mcTextView = (MultiAutoCompleteTextView) findViewById(R.id.multiAutoCompleteTextView); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,res); mcTextView.setAdapter(adapter); //以逗号为分隔符 mcTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); } }AutoCompleteTextView的使用:
支持基本的自动完成功能,适用在各种搜索功能中,并且可以根据自己的需求设置他的默认显示数据。
两个控件都可以很灵活的预置匹配的那些数据,并且可以设置输入多少值时开始匹配等等功能。
代码如下:
<AutoCompleteTextView android:hint="请输入要搜索的关键词" android:layout_width="match_parent" android:layout_height="wrap_content" android:completionThreshold="3" android:id="@+id/autoCompleteTextView" />
public class ThreeActivity extends AppCompatActivity { private AutoCompleteTextView acTextView; private String[] res = {"beijing","beijing2","beijing3","shanghai1","shanghai2","shanghai3"}; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_three); acTextView = (AutoCompleteTextView) findViewById(R.id.autoCompleteTextView); ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,android.R.layout.simple_list_item_1,res); acTextView.setAdapter(adapter); } }