【发布时间】:2011-07-14 00:30:40
【问题描述】:
我想知道如何最好地解决以下问题:
我有一个 ViewController。它的视图包含大量复杂的子视图(UIView 的子类)。由于复杂性,其中一些 UIView 会初始化它们自己的 UIGestureRecognisers 并实现相应的目标操作。由于我想协调各种子视图的手势,我必须将单个 ViewController 设置为手势的委托。 有多种可能性。
1) 初始化 viewController 中的所有手势(这将导致大量 viewController)
2) 在 UIVIews (getViewController) 中定义一个协议,由 ViewController 实现
@protocol CustomViewDelegate <NSObject>
@required
- (UIViewController *)getViewController;
@end
3) 自定义 UIViews 的 init 方法并使用 ViewController 作为选项。
- (id)initWithFrame:(CGRect)frame andViewController:(UIViewController *)vc;
解决这个问题最优雅的方法是什么?在 UIView 对象中实现目标动作可以吗?
感谢您的意见...
【问题讨论】:
标签: ios uiview uiviewcontroller uigesturerecognizer