qq_30101569
2016-09-20 10:01
采纳率: 75%
浏览 2.6k

主线程中更新列表,子线程中获取数据

怎么做才能不出现数据已经更新而列表无响应的错误?我试过都放在主线程操作,太卡了,都放在子线程里android又报ui更新必须在主线程中的错误

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

8条回答 默认 最新

  • RoidCoder 2016-09-21 13:42
    已采纳

    数据改变啦,需要调用notifyDataSetChange来刷新数据啊

    具体的看下这两篇博客吧:

    http://www.cnblogs.com/monodin/p/3874147.html

    http://blog.csdn.net/ueryueryuery/article/details/20607845

    点赞 评论
  • 魔笛手 2016-09-20 10:28

    我没有写过android,但是写过界面程序。一般这种情况都可以数据更新在子线程里做,更新完了可以推个消息到UI线程上,让UI线程去拉数据更新。

    点赞 评论
  • Zktiannnnn 2016-09-20 11:36

    可以用异步操作呀,比如simplequeryhandler,asynctask

    点赞 评论
  • guwei4037 2016-09-20 12:14

    可以看下这篇博客,这类问题可以完美解决。
    http://www.cnblogs.com/devinzhang/archive/2011/12/30/2306980.html

    点赞 评论
  • RoidCoder 2016-09-20 14:31

    Handler用起来啊,子线程中请求数据,请求成功后使用Handler发送消息,

    然后再主线程中处理消息,重写Handler的handlerMessage方法即可处理消息

    点赞 评论
  • IT__小菜鸟 2016-09-21 01:39

    用handler发送消息,通过接受到的消息更新UI。new Thread()或者Asynctask都可以开启异步

    点赞 评论
  • wfx_xs 2016-09-21 04:47

    runOnUiThread

    点赞 评论
  • wzgiceman 2016-10-17 03:50

    推荐使用RxAndroid

    点赞 评论

相关推荐 更多相似问题