我正在研究 SO,并认为我已经知道如何做到这一点,但我的测试失败了。我试图从它启动/包含的视图控制器中关闭一个弹出控制器(我对 poc 和 vc 的关系仍然有点模糊)。
在我的 viewcontroller .h 我有这个:
@interface OAI_vcOperatingRooms : UIViewController {
OAI_ColorManager* colorManager;
OAI_FileManager* fileManager;
UIPopoverController* myPopOverController;
}
@property (nonatomic, weak) UIPopoverController* myPopOverController;
- (void) closeVC : (id) sender;
并在 .m 文件中
UIButton* btnClose = [UIButton buttonWithType:UIButtonTypeRoundedRect];
[btnClose addTarget:self
action:@selector(closeVC:)
forControlEvents:UIControlEventTouchDown];
[btnClose setTitle:@"Close" forState:UIControlStateNormal];
btnClose.frame = CGRectMake(10.0, 210.0, 160.0, 40.0);
[self.view addSubview:btnClose];
- (void) closeVC : (id) sender {
[myPopOverController dismissPopoverAnimated:YES];
}
在调用popovercontroller的uiview中,我引用了viewcontroller并添加了这个:
//operating rooms
controller2 = [[OAI_vcOperatingRooms alloc] initWithNibName:@"OAI_vcOperatingRooms" bundle:nil];
popoverController2 = [[UIPopoverController alloc] initWithContentViewController:controller2];
controller2.myPopOverController = popoverController2;
没有错误,但当我点击关闭按钮时没有任何反应。是否可以从 VC 中引用 POC?
谢谢