如果問題標題是準確的,請事先道歉。我在下面概述了我想實現的基本流程。在AppDelegate內部創建一個全局代理類
AppDelegate.h
@interface AppDelegate : UIResponder <UIApplicationDelegate, SomeFrameworkDelegate, OtherFrameworkDelegate>
…other init stuff
AppDelegate.m
- 附上
SomeFrameworkDelegate
和OtherFrameworkDelegate
方法。 - 這些方法主要是輸出消息,如連接/斷開服務。
MainViewController
- 做的東西與這些委託的方法。
- 連接/斷開連接時執行UI操作。等
DetailsViewController
- 使用相同的東西,在MainViewController。
注:
我想我會在AppDelegate中可以設置全局變量,然後在其他UI代碼,我會創造AppDelegate中的一個實例:
AppDelegate *appDelegate=(AppDelegate *)[[UIApplication sharedApplication]delegate]; appDelegate.isConnected = ... appDelegate.serviceName = ...
我怎麼會檢測W¯¯如果消息到達委託方法? NSNotificationCenter/NSTimer?
即一旦委託方法被觸發就發佈通知或創建一個計時器來輪詢appDelegate中的變量。
你的意思是說;你的AppDelegate中有一些變量,你希望其他類在改變值時得到通知?如果是這樣,那麼你可能應該使用KVC ....否則我不完全理解你的問題。 –
由於您正在更改委託方法中的值,因此您可以在其中發佈通知。這樣,任何有興趣的視圖控制器都會被通知。 –