SearchView
で提案リスナーを使用するために、ArrayAdapter<String>
の静的データをCursorAdapter
に変換するにはどうすればよいですか? 私は静的なデータからArrayAdapter<String>
(allString
)ArrayAdapterをSearchViewで使用するためにCursorAdapterに変換する
ArrayAdapter<String> searchAdapter = new ArrayAdapter<String>(context, R.layout.listitem, allString);
を構築してきたし、私のターゲットAPIレベルであるしかし、私はAPIレベルでのデバイスで正常に動作MultiAutoCompleteTextView
未満11
MultiAutoCompleteTextView findTextView.setAdapter(searchAdapter);
のためにそれを使用します11であり、API> 10の場合はActionBar
を使用して、代わりにSearchViewを使用したいと考えています。
私が試したことは次のとおりです。ActionBar
と埋め込み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) –
はい、本当に '_id'について忘れました – pawelzieba