嘿,我有一个我必须在其中显示弹出窗口。我可以轻松做到这一点。当显示其他类的弹出窗口时。此弹出窗口中有一个带有条形按钮“完成”的标题栏。我想通过单击完成按钮来关闭弹出窗口。
如何使用完成按钮关闭弹出框?
谢谢
嘿,我有一个我必须在其中显示弹出窗口。我可以轻松做到这一点。当显示其他类的弹出窗口时。此弹出窗口中有一个带有条形按钮“完成”的标题栏。我想通过单击完成按钮来关闭弹出窗口。
如何使用完成按钮关闭弹出框?
谢谢
您是否尝试过寻找解决方案?
-(void) onDoneButtonClick {
[popover dismissPopoverAnimated:YES];
}
- (void)dismissPopoverAnimated:(BOOL)animated
是UIPopoverController
类的方法。为了以编程方式关闭弹出框,您必须自己保留对呈现的引用UIPopoverController
。
这是一个可能的解决方案:
在弹出框加载的视图控制器中,定义一个属性。
@interface MyViewController: UIViewController
@property (nonatomic, strong) UIPopoverController *popover;
@end
在执行 segue 到 popover 之前,存储 segue 的 popover 控制器。
- (void)prepareForSegue:(UIStoryboardPopoverSegue *)segue sender:(id)sender
{
if ([segue.identifier isEqualToString:@"mySegue"])
{
MyViewController *dvc = segue.destinationViewController;
dvc.popover = [segue popoverController];
}
}
单击按钮时,关闭弹出框。
- (void)onButtonClick:(id)sender
{
[self.popover dismissPopoverAnimated:YES];
}
在简单的 popoverobj 中并在按钮事件上使用简单的方法。
[popoverobj dismissPopoverAnimated:YES];