我选择这个:
final Cursor cursorConversations = getContentResolver().query( Uri.parse("content://gmail-ls/conversations/" + Uri.encode(mailAddress)),null,BaseColumns._ID + " DESC"); ContentQueryMap mQueryMap = new ContentQueryMap(cursorConversations,BaseColumns._ID,true,null);
使用ContentQueyMap,我可以缓存Cursor数据并在Cursor关闭的情况下迭代它(我需要它来提升性能).
现在,我想要选择Corsor只检索前五十行.在mQueryMap.getRows().entrySet()中循环50次的解决方案是不正确的:我不希望mQueryMap获取Cursor的所有行,但只有前五十行.
任何的想法?是否存在where子句只能获得前n行?
解决方法
你可以做到
final Cursor cursorConversations = getContentResolver().query( Uri.parse("content://gmail-ls/conversations/" + Uri.encode(mailAddress)),BaseColumns._ID + " DESC " + " LIMIT 5");
排序后“LIMIT x”.
干杯