我有一个名为“MainViewController”的UIViewController
,它使用自定义类'CustomController'来控制其中一个子视图。自定义类在代码中实例化UIButton
。我如何让这些按钮触发MainViewController中的方法?
答案 0 :(得分:3)
我认为代表团是去那里的方式。
使用如下方法在CustomControllerDelegate
内定义协议CustomController.h
,例如:
- (void) customControllerButtonPressed(id)sender; // BTW: you can use `CustomController` instead of `id` if you make a forward declaration for this class
添加委托属性并在.m
文件
@property (assign) id<CustomControllerDelgate> delegate;
现在按下按钮时,您只需致电代表:
[self.delegate customControllerButtonPressed:self];
在MainViewController
中,您使其符合指定的协议并设置CustomControllers委托,如下所示:
CustomViewController *customVC = [[CustomViewController alloc] init];
customVC.delegate = self;
现在按下按钮时,将调用指定方法的MainViewController
实现。