問題不是過度查詢(),這是我如何處理它。這是我的解決方案:
@Override
public Cursor query(Uri uri, String[] projection, String selection,
String[] selectionArgs, String sortOrder) {
Cursor recentCursor = super.query(uri, projection, selection,
selectionArgs, sortOrder);
query = selectionArgs[0];
if (query == null || query.length() < 3) {
return recentCursor;
} else {
query = selectionArgs[0];
MatrixCursor customCursor = new MatrixCursor(COLUMN_NAMES);
SearchSuggestionObject[] suggestions = getSuggestionsFromWebFeed(query);
for (SearchSuggestionObject suggestion : suggestions) {
customCursor.addRow(new Object[] { suggestion.getId(),
suggestion.getItem(), suggestion.getCat(),
suggestion.getItem(), suggestion.getItem(),
suggestion.getCat(), "android.intent.action.SEARCH" });
}
return customCursor;
}
}
那麼,首先你必須決定你真的想要發生什麼。這聽起來像你想要最近的建議和你的自定義建議,但在什麼組合?你最近想要顯示的最新建議?或者您是否希望首先顯示自定義建議?你想展示他們全部,還是隻有近一半的習慣和最近的一半?在你決定之後,嘗試調用'query'的重載實現中的'super.query()',然後根據需要合併你的結果。 – kabuko 2013-04-10 17:35:35
@ kabuko嗯,我想出了我的問題,但那不是發生了什麼事情。我需要找出如何合併它們,但這些列需要匹配我相信,我很難找出一個。 – KickingLettuce 2013-04-10 18:06:57