关于Cocoa Touch中的单身人士的问题

时间:2011-07-15 16:58:57

标签: objective-c ios cocoa-touch uigesturerecognizer uiresponder

我对OOP和设计模式都很陌生,但我之前已经实现了一次Singleton模式,以便在不同的ViewControllers之间传递静态数组和字符串对象。

我想知道是否有一种简单的方法让我的所有ViewControllers监听手势或事件,然后在所述手势/事件发生后执行一些代码。我在考虑使用UIGestureRecognizer类的motionBegan对象或UIResponder方法。

我已经通过创建一个新的UIWindow类,在那里提供代码,并将MainWindow.xib的类更改为我的自定义类来实现此功能。这是有效的,并且是一个很好的解决方案,但我仍然想知道是否存在实现此解决方案的非IB方式(例如,单身人士)

提前感谢您的指导。

示例代码非常感谢!

2 个答案:

答案 0 :(得分:1)

你是否继承了UIWindow?这种情况非常罕见。阅读有关UIApplication委托对象和一般委托模式的信息。它基本上是你的应用程序在Cocoa中的主要单例。

如果您不想传递它,您可以随时通过调用

来检索应用程序的委托
[[UIApplication sharedApplication] delegate]

答案 1 :(得分:0)

如果您希望将大量未连接的对象/控制器通知单个事件,您可以根据需要触发它(来自控件或手势识别器的目标/操作)。

您可能希望查看NSNotificationCenterNSNotification,您可以列出多个对象列出事件/更改通知。