在下面的代码中,我有一个操作/按钮,当您点击该按钮时,您将带您进入另一个viewController(SecondViewController
),一切正常,但是有一些我不完全了解的代码。
这行代码在做什么?
secondVC.delegate =自我
我们在说什么代表?如果我只需要转到其他视图并且不传递任何数据,真的需要吗?
@IBAction func goToView(sender: AnyObject) {
let secondVC= storyboard?.instantiateViewControllerWithIdentifier("secondViewController") as! SecondViewController
secondVC.delegate = self // is this needed?
self.presentViewController(secondVC, animated:true, completion:nil)
}
最佳答案
这行编码是将您站在其中的当前类的对象引用传递给SecondViewController。现在,您可以通过使用secondViewController中的委托对象来调用firstViewController(我假设为此名称)的方法。
,如果您只是想转到下一个屏幕(在您的情况下为SecondViewController)。
接下来的操作会将您带到下一个控制器,请确保您没有NavigationController。与NavigationController一样,您必须将ViewController推入堆栈。
@IBAction func goToView(sender: AnyObject) {
let secondVC= storyboard?.instantiateViewControllerWithIdentifier("secondViewController") as! SecondViewController
self.presentViewController(secondVC, animated:true, completion:nil)
}
或在NavigationController的情况下
@IBAction func goToView(sender: AnyObject) {
let secondVC = self.storyboard?.instantiateViewControllerWithIdentifier("secondViewController") as? SecondViewController
self.navigationController?.pushViewController(secondVC!, animated: true)
}
希望我的描述性回答对您有所帮助。随时在评论中提问。
谢谢。
关于ios - 转到第二个viewController,没有问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39079202/