Dismiss Modal ViewController Popup

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Dismiss Modal ViewController Popup相关的知识,希望对你有一定的参考价值。

情况就是这样。我有2个控制器。在第一个控制器我有关于表格提交的正常反馈表格有弹出窗口(模态)。第二个控制器我用作模态。我使用第一个控制器的下面代码将第二个控制器称为模态。

popupObj= [self.storyboard instantiateViewControllerWithIdentifier:@"OTPDialogViewController"];
popupObj.view.frame = self.view.frame;
[self.view addSubview:popupObj.view];
[self addChildViewController:popupObj];

哪个工作正常。现在我想在第二个控制器中单击按钮关闭时关闭弹出窗口。下面的代码没有帮助

[self dismissModalViewControllerAnimated:NO];
答案

您将popupObj视图控制器作为“子”视图控制器添加到第一个视图控制器。

如果你检查'addChildViewController:'的文档,解除它的相应方法(子视图控制器)是: - (void)removeFromParentViewController;

链接到: - (void)addChildViewController:(UIViewController *)childController; https://developer.apple.com/documentation/uikit/uiviewcontroller/1621394-addchildviewcontroller?language=objc

在popupObj视图中尝试这个控制器:

- (IBAction)dismissBtnClicked:(UIButton *)sender {
    [self removeFromParentViewController];
}

链接到: - (void)removeFromParentViewController; https://developer.apple.com/documentation/uikit/uiviewcontroller/1621425-removefromparentviewcontroller?language=objc

希望这可以帮助。

另一答案

这将在swift 4中为我工作。试试你的第二个视图控制器按钮动作方法

 @IBAction func btncClose(_ sender: UIButton) {

        self.dismiss(animated: true, completion: nil)
    }

以上是关于Dismiss Modal ViewController Popup的主要内容,如果未能解决你的问题,请参考以下文章

Dismiss Modal ViewController Popup

Bootstrap 显示多个模态框(modal)

关闭引导模式而不使用“隐藏”和“数据关闭”

没有 modal、tabbar 和 navigationcontroller 的 UIViewController 工作流管理?

文件上传FormData

静态实例