如果我有一个视图(mainView
),我在其中添加了子视图。如何将子视图实例转到mainView?
我在那些子视图中有一个按钮,当按下它时应该调用mainView中的方法,所以我尝试了:
[myButton addTarget:self.presentingViewController
action:@selector(myMethod:)
forControlerEvents:UIControletcetc];
和
[myButton addTarget:self.parentViewController action:@selector....];
我看到parentViewController
现在在iOS 5中返回nil
,但presentingViewController
似乎不是这样做的,因为它没有以模态方式呈现。它只是一个子视图。任何提示?
答案 0 :(得分:1)
您的问题并未明确表达您是在谈论视图还是查看控制器。使用superview
属性访问视图的父级。
通常无法从视图进入其视图控制器。
答案 1 :(得分:0)
我觉得你试图让你的观点了解超出其范围的对象。
如果您需要向包含您观点的任何人通知某个活动,您可以使用委托来执行此操作。
说:
@protocol YourClassDelegate
@optional
- (void)instanceOfYourClass:(YourClass *)instance tappedButton:(UIButton *)button;
@end
然后
@interface YourClass
@property (nonatomic, assign) id<YourClassDelegate> delegate;
@end
我希望你可以从这里开始,通过合成属性,分配委托并在需要时调用方法。