首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将数据从childViewController发送回parentviewController

将数据从childViewController发送回parentviewController
EN

Stack Overflow用户
提问于 2017-10-27 20:47:11
回答 1查看 68关注 0票数 0

添加了一个子视图控制器,如下所示:

代码语言:javascript
复制
// ParentViewController
 if ((self.delegate?.showPopupSymtomDetailViewController(view: viewController, receiver: self)) != nil)
    {

    }

// ChildViewController
 //MARK: PopUpCode
func popUpAt(parentViewController:UIViewController)
{
    parentViewController.addChildViewController(self)
    parentViewController.view.addSubview(self.view)

    self.view.frame = parentViewController.view.frame
    self.didMove(toParentViewController: parentViewController)

}

如何将数据发回parentViewController,请指导。

EN

回答 1

Stack Overflow用户

发布于 2017-10-27 21:14:50

例如,您可以使用回调。

代码语言:javascript
复制
class ParentViewController: UIViewController {

  if ((self.delegate?.showPopupSymtomDetailViewController(view: viewController, receiver: self)) != nil) {
     viewController = { YourString in 
          //do here whatever you want in your parent view controller
        }
  }
}

class ChildViewController: UIViewController {
   var callbackFunc: ((String) -> Void)? //You can decide if the object you want to send back, I used String but you can change it and even you can send more than one parameters back (String, ThirViewController, Bool)...

   func popUpAt(parentViewController:UIViewController) {
          parentViewController.addChildViewController(self)
          parentViewController.view.addSubview(self.view)

          self.view.frame = parentViewController.view.frame
          self.didMove(toParentViewController: parentViewController)
          callBack(YourString) //Here you pass the data from ChildViewController to ParentViewController
   }
}

还有其他方法可以将信息从ChildViewController发送回ParentViewController,但这取决于您的项目。这是一个你会经常做的动作吗?也许你需要一个委托来重用它。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46975429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档