2015-02-08 37 views
0

我有一個名爲FlashlightFragment的類,允許用戶控制手電筒。發送消息從一個類到其他許多人?

問題是,用戶可以打開或關閉一些地方的手電筒。由於手電筒的所有更改都通過一個名爲FlashlightHelper的類,我想從它廣播一條消息,可以在我的應用程序的任何位置接收消息。我記得有一種方法可以做到這一點,但我不記得功能的名稱。

基本上我想從FlashlightHelper發送如下消息:「FLASH_ON」,然後將偵聽器設置爲可以接收此消息的應用程序上的不同片段和活動。

這是如何完成的?

+0

BroadcastReceiver是你可能更適合你的。請記住取消註冊,否則您可能會泄漏您的片段,因此活動 – Blackbelt 2015-02-08 18:40:43

+0

除了BroadcastReceiver之外,還可以使用otto或EventBus來通知活動片段。 – 2015-02-08 18:41:30

+0

或'Interface'請注意,由於一次只有一個活動正在運行,因此無法發送到多個活動。 – Simon 2015-02-08 18:44:25

回答

1

我不會專注於你面對的具體情況,而是回答一般問題:如何從一個類發送消息到另一個(或許多其他)。

BroadcastReceiver

Intents and Intent filters

...這些是主要的方法,將可能對你是足夠的。然後是軟件工程模式,比如單身模式可以做到這一點,但如果我是你,我會堅持第一個。

相關問題