首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >更改游标后Android ListView不刷新

更改游标后Android ListView不刷新
EN

Stack Overflow用户
提问于 2012-12-19 21:45:56
回答 1查看 2.3K关注 0票数 4

下面的代码用于填充一个无限的ListView。当用户到达列表末尾时,应用程序调用异步任务以获取更多项,然后在post execute execute时返回新的游标并与前一个游标合并。问题是这段代码不能在ICS和Jelly Bean上工作,但能在Froyo和Gingerbread上工作。在ICS和JellyBean上,列表视图为空,但如果记录光标大小,则会得到合并后的光标的大小。

代码语言:javascript
运行
复制
Cursor[] cursors = new Cursor[2];   
//actual cursor   
cursors[0] = resourceCursor.getCursor();   
//new cursor returned by async task   
cursors[1] = result;   
MergeCursor mergeCursor = new MergeCursor(cursors);   
resourceCursor.changeCursor(mergeCursor);  
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-19 23:47:49

好吧,我找到了一个解决方案,看起来是一个很糟糕的解决方案,但它是有效的。在我的研究中,所有的问题似乎都是在Honeycumb之后解决的,所以我将API级别改为11,以使swapCursor可用,然后,在我的代码上:

代码语言:javascript
运行
复制
Cursor[] cursors = new Cursor[2];   
//actual cursor   
cursors[0] = resourceAdapterCursor.getCursor();   
//new cursor returned by async task   
cursors[1] = result;   
MergeCursor mergeCursor = new MergeCursor(cursors);   
if (android.os.Build.VERSION.SDK_INT > android.os.Build.VERSION_CODES.GINGERBREAD){
    resourceAdapterCursor.swapCursor(mergeCursor);
} else {
    resourceAdapterCursor.changeCursor(mergeCursor);
}

谢谢!

诚挚的问候。

罗德里戈

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13953773

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档