SearchView
에서 추천 리스너를 사용하기 위해 ArrayAdapter<String>
개의 정적 데이터를 CursorAdapter
으로 변환하려면 어떻게해야합니까? 나는 정적 데이터 (allString
)SearchView에서 ArrayAdapter를 CursorAdapter로 변환
ArrayAdapter<String> searchAdapter = new ArrayAdapter<String>(context, R.layout.listitem, allString);
내가 미만 11
MultiAutoCompleteTextView findTextView.setAdapter(searchAdapter);
그러나 내 목표 API 레벨은 API 레벨 장치에서 잘 작동하는 MultiAutoCompleteTextView
을 위해 사용에서 ArrayAdapter<String>
을 건설 한 11이고 API> 10 인 경우을 사용하고 그 대신 SearchView를 사용하고 싶습니다.
다음은 내가 시도한 것입니다. 이 포함 된 SearchView
으로 표시되지만 MultiAutoCompleteTextView
에서와 같은 제안 사항은 없습니다. SearchView.setSuggestionsAdapter
이상하다
@Override
public boolean onCreateOptionsMenu(Menu menu) {
MenuInflater inflater = getMenuInflater();
if (android.os.Build.VERSION.SDK_INT > 10){
inflater.inflate(R.menu.menu11, menu);
searchView = (SearchView) menu.findItem(R.id.MENU_SEARCH).getActionView();
int[] to = {0};
CursorAdapter cursorAdapter = new SimpleCursorAdapter(context, R.layout.listitem, null, allBusStopString, to);
searchView.setSuggestionsAdapter(cursorAdapter);
searchView.setOnSuggestionListener(new OnSuggestionListener() {
@Override
public boolean onSuggestionClick(int position) {
String selectedItem = (String)cursorAdapter.getItem(position);
Log.v("search view", selectedItem);
return false;
}
@Override
public boolean onSuggestionSelect(int position) {
return false;
}
});
}else{
inflater.inflate(R.menu.menu, menu);
}
return true;
}
덕분에, 그것은했다. 난 그냥 오류를 방지하기 위해 _ID 열을 추가했다 –
는 [여기] (http://stackoverflow.com/questions/3360605/column-id-does-not-exist) –
예 실제로, 나는 잊었다 설명' – pawelzieba