MultiAutoCompleteTextView和AutoCompleteTextView之间的区别

有人可以解释MultiAutoCompleteTextViewAutoCompleteTextView之间的区别吗?

AutocompleteTextView只提供关于整个句子的build议, MultiAutoCompleteTextView为句子中的每个标记提供build议。 您可以指定标记之间的分隔符。

 String[] words=new String[] { "word1", "word2", "word3", "word4", "word5" }; MultiAutoCompleteTextView macTv = (MultiAutoCompleteTextView) this.findViewById(R.id.mac_tv); ArrayAdapter<String> aaStr = new ArrayAdapter<String>(this,android.R.layout.dropdown_item,words); macTv.setAdapter(aaStr); macTv.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer() ); 

和:

 <MultiAutoCompleteTextView android:id="@+id/mac_tv" android:layout_width="fill_parent" android:layout_height="wrap_content" android:completionThreshold="1" /> 

在这个例子中,每个逗号后面都有提示。

在使用AutoCompleteTextView或MultiAutoCompleteTextView之间的select取决于是否允许用户只input由适配器提供的“一个项目”或“多个项目”。

例如,如果您正在编写电子邮件应用程序,并且您希望“To:”字段是自动填充字段,从地址簿中拉取匹配项,则您可能希望允许用户select多个收件人作为邮件,并将使该字段为MultiAutoCompleteTextView。

另一方面,在同一示例电子邮件应用程序中的“发件人:”字段中,您只需要强制用户从其configuration的电子邮件帐户中select一项即可。 所以在这里适合使用AutoCompleteTextView。

AutoCompleteTextView和MultiAutoCompleteTextView之间的区别

AutoCompleteTextView Vs MultiAutoCompleteTextView

AutocompleteTextView只提供关于整个句子的build议MultiAutoCompleteTextView为句子中的每个标记提供build议。 您可以指定标记之间的分隔符。

AutoCompleteTextView用于select单个项目MultiAutoCompleteTextView用于通过在它们之间使用分隔符(如逗号)来select多个项目。

例如电子邮件应用程序中的“发件人:”字段,则只需要用户从其configuration的电子邮件帐户中强制执行一个select即可。 如果您正在编写电子邮件应用程序,并且希望“收件人:”字段是一个自动填充字段,从地址簿中获取匹配项,则您希望允许用户为邮件select多个收件人,并使该字段一个MultiAutoCompleteTextView