我希望在我的SearchView上有歷史記錄,我一直在使用Google搜索,而我發現的唯一合理的(?)教程是this,但這僅僅適用於類似薑餅, 14。在ActionBar上創建「歷史記錄」到SearchView
然後我發現這個代碼:
String[] columnNames = {"_id","text"};
MatrixCursor cursor = new MatrixCursor(columnNames);
String[] array = {"Snääälla", "bla bla bla", "Jävla piss"}; //if strings are in resources
String[] temp = new String[2];
int id = 0;
for(String item : array){
temp[0] = Integer.toString(id++);
temp[1] = item;
cursor.addRow(temp);
}
String[] from = {"text"};
int[] to = {android.R.id.text1};
CursorAdapter ad = new SimpleCursorAdapter(this.getActivity(), android.R.layout.simple_list_item_1, cursor, from, to);
mSearchView.setSuggestionsAdapter(ad);
這代碼只能一半,因爲它並不顯示從你所編寫的程序的結果,它顯示了所有項目。
我只是希望它看起來是這樣的:
這是我目前對加入搜索查看代碼:
RES /菜單/ menu.xml文件:
<item android:id="@+id/fragment_searchmenuitem"
android:icon="@drawable/ic_search_white"
android:title="@string/menu_search"
android:showAsAction="collapseActionView|ifRoom"
android:actionViewClass="android.widget.SearchView" />
MainActivity.java:
@Override
public void onCreateOptionsMenu(Menu menu, MenuInflater inflater) {
if(!mDrawerLayout.isDrawerOpen(mDrawerList)) {
inflater.inflate(R.menu.fragment_search, menu);
mMenuItem = menu.findItem(R.id.fragment_searchmenuitem);
mSearchView = (SearchView) mMenuItem.getActionView();
mMenuItem.expandActionView();
mSearchView.setOnQueryTextListener(new SearchView.OnQueryTextListener() {
@Override
public boolean onQueryTextSubmit(String s) {
mMenuItem.collapseActionView();
searchSupport.SearchForLyrics(s);
actionBar.setSubtitle("Searcing for: " + s);
return true;
}
@Override
public boolean onQueryTextChange(String s) {
return false;
}
});
}
super.onCreateOptionsMenu(menu, inflater);
}
有人可以請給我一些開始,說實話,我不知道從哪裏開始。所以任何幫助將非常感激。
你有沒有想過把它們保存在你的數據庫中,然後使用自動完成的textview使用光標適配器從數據庫中檢索它 –
@TerrilThomas是的,是的,我有。但我希望谷歌會有一些官方的API或者其他的東西來做到這一點。 – GuiceU