【发布时间】:2012-01-05 03:56:20
【问题描述】:
是否可以在片段中动态注册广播接收器以监听连接状态变化?如果有怎么办?如果没有,片段的一些解决方法是什么?
编辑:要注册广播接收器,您需要一个上下文。由于片段存在于活动中,因此获取 Context 的最佳方法可能就是使用 getActivity()。然而,正如 gnorsilva 在下面解释的那样,有一些特殊情况需要注意。
【问题讨论】:
-
您可以让主机活动处理广播并与片段通信
-
这不是将活动和片段结合起来吗?片段的优点之一是您可以在其他活动中重用它们。这会降低你这样做的能力。我在我的一个应用程序中遇到了同样的问题,并且所有需要上下文的东西都是一样的。我最终使用了一个封装了片段所需功能的活动基类。不会将它们完全解耦,但会使维护更容易。
标签: android broadcastreceiver android-fragments