[자동입력, 연관검색]2 MultiAutoCompleteTextView
java.lang.Object | |||||
↳ | android.view.View | ||||
↳ | android.widget.TextView | ||||
↳ | android.widget.EditText | ||||
↳ | android.widget.AutoCompleteTextView | ||||
↳ | android.widget.MultiAutoCompleteTextView |
- AutoCompleteTextView와 다른점은 tokenizer로 여러개를 입력할 수(선택할 수) 있습니다.
tokenizer는 자바에서도 볼수있는데요, 단어들을 구별할만한 특정한 기호들을 정해서 단어들을 구분해줄수 있는 기능을 합니다.
MultiAutoCompleteTextView는 이 tokenizer 기능을 사용하게 됩니다.
예) 쉼표(,) tokenizer라면 "Belgium, France"가 가능
- 반드시 목록에 있는 항목을 선택해야 하는것은 아님
1. 자동완성에 쓸 문자열 및 Tokenizer 연결시키기(setAdapter(), setTokenizer())
public class CountriesActivity extends Activity {
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.autocomplete_7);
ArrayAdapter<String> adapter = new ArrayAdapter<String>(this,
android.R.layout.simple_dropdown_item_1line, COUNTRIES);
MultiAutoCompleteTextView textView = (MultiAutoCompleteTextView) findViewById(R.id.edit);
textView.setAdapter(adapter);
textView.setTokenizer(new MultiAutoCompleteTextView.CommaTokenizer()); // ','(쉼표) Tokenizer 등록(안드로이드 기본 제공 Tokenizer)
}
private static final String[] COUNTRIES = new String[] {
"Belgium", "France", "Italy", "Germany", "Spain"
};
}
xml에서의 구성은 AutoCompleteTextView와 옵션은 동일합니다.
android:layout_height = "wrap_content"로 설정해야 드롭다운 목록이 보인다구 합니다.