안드로이드에서 AutoCompleteTextview와 sqlite를 연동해서 sqlite db에 fixed된 자동완성 리스트를 삽입하고
AutoCompleteTextview 메서드를 호출함으로써 자동완성 기능을 구현해보았는데요..
이 메서드는 딱 한번! 자동완성 해주면 끝이기에, 계속해서 받을 수 있는 MultiAutoCompleteTextview라는 메서드를
저번에 프게에서 도움을 받아 알게되었고 해보고 있습니다
그런데 기본적인 틀은 분명 동일하고 Multi에는 토크나이저 라는 요소가 추가되었다는게 차이점 인데..
기존 Auto 메서드를 MultiAuto 메서드로 변경해주고 토크나이저만 추가했을 뿐인데
앱 실행시 한글자만 입력하면 곧장 중지되어 버리는 현상이 생깁니다. 왜 이러는걸까요..?
코드상에서 CustomAutoCompleteView를 클래스를 호출하는데 아래가 해당 클래스 입니다.
public class CustomAutoCompleteView extends AutoCompleteTextView
{
public CustomAutoCompleteView(Context context) {
super(context);
// TODO Auto-generated constructor stub
}
public CustomAutoCompleteView(Context context, AttributeSet attrs) {
super(context, attrs);
// TODO Auto-generated constructor stub
}
public CustomAutoCompleteView(Context context, AttributeSet attrs, int defStyle) {
super(context, attrs, defStyle);
// TODO Auto-generated constructor stub
}
@Override
protected void performFiltering(final CharSequence text, final int keyCode) {
String filterText = "";
super.performFiltering(filterText, keyCode);
}
@Override
protected void replaceText(final CharSequence text) {
super.replaceText(text);
}
}
기존 Auto 메서드에 Multi를 붙여준 것, 클래스 내부에 commaTokenizer가 추가 된 것.
그리고 동일하게 호출하는 CustomAutoCompleteView 클래스의 상속을
public class CustomAutoCompleteView extends MultiAutoCompleteTextView 이렇게 변경해주었다는 점 빼면
차이가 없습니다.
Multi는 sqlite db와 연동이 불가능한가요?ㅠㅠ