我有一个带有子视图view2的view1,其中我有一个UIButton按钮,它触发了一个动作soSomething:
view1
--view2
----IBOutlet UIButton *button
-----(IBAction) doSomethingid)sender
点击按钮调用doSomething。 现在我如何在doSomething中调度自定义事件并在view1中捕获它?
例如在view2中:
代码:
-(IBAction)doSomething:(id)sender{
// Disptach the event for the parent "superView" to receive
}
然后在view1中有处理该事件的东西。
答案 0 :(得分:6)
在您的动作活动中
// Dispatch the event for the parent "superView" to receive
-(IBAction) doSomething:(id)sender{
[[NSNotificationCenter defaultCenter] postNotification:@"SomeEventName"];
}
在您的view1 viewdDidLoad
方法中编写此代码
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(methodToHandel) name:@"SomeEventName" object:nil];
并添加此方法来处理该事件
-(void) methodToHandel{
// this method get call
}
答案 1 :(得分:0)
您可以使用NSNotificatons或委派,具体取决于您的应用的设置方式。我建议查看文档以了解有关这些内容的更多信息。