0

我想在 Window 上显示应用程序委托消息,例如“应用程序变为活动状态”(调用时调用)。-applicationDidBecomeActive:application

一种方法是使用通知中心,如下所示:

AppDelegate.m

NSNotification *n = [NSNotification notificationWithName:@"AppBecameActive" object:self];
[[NSNotificationCenter defaultCenter] postNotification:n];

视图控制器.m

NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];
[nc addObserver:self selector:@selector(showMessageAppBecameActive) name:@"AppBecameActive" object:nil];

这种方式是显示应用程序委托消息的唯一方法吗?或者,是否有任何其他方式,例如查看当前视图控制器实例的属性?

谢谢你的好意。

4

2 回答 2

0

如果您可以从appDelegate访问ViewController。(我的意思是像 @property 或实例一样驻留在其中)您可以立即发送消息。如果您没有这样的访问权限。为单吨编写键值观察器并让您的viewController接收更改。

于 2014-03-18T07:18:20.527 回答
-1

在需要通知的 viewController 中注册以下代码。

[[NSNotificationCenter defaultCenter]addObserver:self
                                         selector:@selector(yourMethod)
                                             name:UIApplicationDidBecomeActiveNotification
                                           object:nil];

iOS 框架会在您的应用激活时发布通知,如果您将通过上述方式注册,则可以在注册方法(在本例中为 yourMethod)处理通知。

于 2012-08-27T04:40:20.917 回答