AutoCompleteTextView
completionThreshold設置輸入字符長度開始匹配
XML文件設置
<android.support.v7.widget.AppCompatAutoCompleteTextView
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:id="@+id/text_view2"
android:hint="輸入內容"
android:layout_below="@+id/text_view1"
android:completionThreshold="2"/>
Activity文件代碼
public class MainActivity extends AppCompatActivity {
private AutoCompleteTextView textView;
private ArrayAdapter<String> adapter;
private String[] city = {"beijing", "beijing2", "shanghai2", "shanghai1"};
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
/**
* 1初始化控件
* 2獲得一個數據源,這是是一個字符串數組
* 3獲得適配器對象
* 4綁定適配器對象
* */
textView = (AutoCompleteTextView) findViewById(R.id.text_view2);
//設置開始匹配最小字符
textView.setThreshold(2);
//獲得adapter實例
adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, city);
//綁定適配器
textView.setAdapter(adapter);
}
}
MultiAutoCompleteTextView
可以支持選擇多個值,將輸入的值用`;“隔開後可以進行再次匹配
可以用於羣發郵件和短信的時候
multiTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());
/**
* 1初始化控件
* 2獲得一個數據源,這是是一個字符串數組
* 3獲得適配器對象
* 4綁定適配器對象
* 5設置分隔符
* */
multiTextView = (MultiAutoCompleteTextView) findViewById(R.id.text_view3);
multiTextView.setAdapter(adapter);
//設置分隔符
multiTextView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer());