Android 如何使用ContentQueryMap类缓存游标值?
我读到ContentQueryMap可以用来访问游标值,而不是每次都访问db 但是,如何使用它呢? Android官方帮助是hermetic…Android 如何使用ContentQueryMap类缓存游标值?,android,caching,cursor,Android,Caching,Cursor,我读到ContentQueryMap可以用来访问游标值,而不是每次都访问db 但是,如何使用它呢? Android官方帮助是hermetic…ContentQueryMap mQueryMap=newcontentquerymap(游标,BaseColumns.\u ID,true,null); ContentQueryMap mQueryMap = new ContentQueryMap(cursor, BaseColumns._ID, true, null);
ContentQueryMap mQueryMap=newcontentquerymap(游标,BaseColumns.\u ID,true,null);
ContentQueryMap mQueryMap = new ContentQueryMap(cursor, BaseColumns._ID, true, null);
Comparator<Long> numberAmaxB = new Comparator<Long>() {
@Override public int compare(Long s1, Long s2) {
if (s1<s2)
return 1;
else if (s1>s2)
return -1;
else
return 0;
}
};
SortedMap<Long, String> mySortedMap = new TreeMap<Long, String>(numberAmaxB);
for (Map.Entry<String, ContentValues> row : mQueryMap.getRows().entrySet()) {
Long _ID = Long.valueOf(row.getKey());
String data= row.getValue().getAsString("data_column");
conversationsSortedMap.put(_ID, data);
}
比较器numberAmaxB=新比较器(){
@覆盖公共整数比较(长s1、长s2){
如果(s1s2)
返回-1;
其他的
返回0;
}
};
SortedMap mySortedMap=新树映射(numberAmaxB);
对于(Map.Entry行:mQueryMap.getRows().entrySet()){
Long _ID=Long.valueOf(row.getKey());
字符串数据=row.getValue().getAsString(“数据列”);
conversationsSortedMap.put(_ID,data);
}
提交答案时,应写下评论。我不明白你的答案。@omidnazifi我不同意。本例中的代码片段已经足够了,因为它清楚地提供了questionDear@Bostone所述的示例,我也不同意您的观点。因为如果一个初学者想要使用这个代码,他/她就不能。问题没有得到充分解释。@omidnazifi我同意,是的。。。但如果初学者是我的祖母:-P