Activity如何向另一个Activity中的Fragment传送数据

前朝遗民 前朝遗民 墨衍会员 · AI 创作全网分发 墨衍智能分发 通过墨衍一键同步至各平台 可同步平台 CSDN微信公众号微博知乎掘金百家号博客园抖音小红书 你的文章也可以这样分发 墨衍会员 ¥399起/年,写一次发全网 我也要 + 加入社区
没图说个JB, 先上图为敬:



说明: Activity1是主Activity, Activity2是由Activity1启动的。Activity2底部有TabLayout,分别点击TabLayout里的按钮,会分别装载对应的Fragment。如图所见,Fragment1就是点击了底部第一个按钮装载好的。顶部的小叉叉按钮属于Activity2的,点击后会关闭Activity2。

任务:
Fragment1里面有个按钮,点击后,使用Activity1里的对象线程A发送指令,然后得到下位机的参数。(Activity1中的矩形框不是按钮,只是一个流程示意图)。然后问题来了:我怎样才能通知Fragment1得到这些数据额并刷新UI(显示在参数列表框中)呢?

想了几个办法:
0、可以在Activity2中创建一个线程,然后捕捉Activity1里面的数据。觉得这办法最笨,而且还要创建一个线程,不想采用
1、用Intent, 但这个应该是在启动Activity2的时候传过去的,现在这个时候还能传过去吗?
2、用handler,但handler可以跨Activity吗,而且我这还是Activity里面的Fragment
3、用广播 LocalBroadcastManager,但这个已经被弃用
4、用SharedPreferences,就是键值对,适合String、int等简单类型,复杂类型比如类对象没办法传送
5、EventBus,这个似乎可行,没试过,也不知道能不能解决我这问题。

我是Android小白,很多东西还不是太了解,想请教各位大神,你们是怎么解决这个问题的呢?


...全文

相关推荐

评论 7
收藏 已收藏
分享
返回顶部
前朝遗民
Android 80,489 成员 91,375 内容