首页 > 移动平台 > 详细

安卓activity之间互相通信的问题

时间:2014-10-18 23:43:36      阅读:424      评论:0      收藏:0      [点我收藏+]

============问题描述============


大侠,如果我想在activity A中启动activity B,然后activity A还能向B发送状态信息,B再根据A发送来的状态决定自身的变化,比如A发送退出命令,B接收之后就finish,这样的想法能实现吗?
之所有有这样的需求是因为,比如在登录的时候,考虑到网络延迟的关系,在用户点按钮时,我想要出现一个loading的界面,覆盖在登录界面上面,然后当服务端返回成功,loading的那个界面就变成一个对号√的图片,失败就变成一个叉×的图片,并且短暂停留之后消失,这样应该怎么样实现呢?

============解决方案1============


可以使用Dialog,自定义一个ProgressDialog,点击按钮时,让这个Dialog.show,会有一个覆盖当前页面的弹出层,等完成之后,Dialog.dismiss()就能让Dialog消失,具体可以百度搜索 自定义Loading Dialog,教程挺多的,希望能帮到你

============解决方案2============


试试看activity A用startActivityForResult(),在activity B收到数据后根据服务端的数据判断显示哪一张图片,然后activity B返回从服务端获得的数据给activity A并finish(),同时你还可以在activity B的finish之前做其他时,当然这是理论上的,实际你先试试看吧

============解决方案3============


网络访问是在子线程里做的,所以你的需求应该是网络子线程和loading activity的通信,而不是loading activity与它父activity的通信。
至于网络子线程和loading activity的通信,采用现成的Looper/Handler模式就可以了。

安卓activity之间互相通信的问题

原文:http://www.cnblogs.com/lengyanyue39/p/4033901.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!