Передача значений в UIViewController в Новой раскадровке-Swift
Я пытаюсь передать значения новому контроллеру вида, расположенному в новом файле раскадровки. Однако, когда я делаю так, результат я получаю от NewViewController всегда ноль.
ниже показано, как я показываю контроллер вида в новой раскадровке:
// Show create account page with custom transition
var storyboard : UIStoryboard = UIStoryboard(name: StoryboardName, bundle: nil)
var vc : UIViewController = storyboard.instantiateViewControllerWithIdentifier(NewViewController) as UIViewController
Я пытаюсь отправить эту информацию:
// Pass the delegate to the first view controller
let newViewController:NewViewController = NewViewController()
newViewController.createAccountDelegate = self
newViewController.teststring = "hello"
и затем представить контроллер представления.
vc.transitioningDelegate = self
vc.modalTransitionStyle = UIModalTransitionStyle.CoverVertical
self.presentViewController(vc, animated: true, completion: nil)
вот мой NewViewController, где я пытаюсь получить значения. Однако в итоге все равно ничего.
import UIKit
class NewViewController: UIViewController {
var createAccountDelegate:AccountCreationDelegate!
var teststring:NSString!
override func viewDidLoad() {
super.viewDidLoad()
}
Я отправляю значения неправильно?
1 ответов
вы создаете новый экземпляр NewViewController
строка
let newViewController:NewViewController = NewViewController()
вместо этого назначьте переменные и делегируйте vc
который вы создали из StoryBoard
var storyboard : UIStoryboard = UIStoryboard(name: StoryboardName, bundle: nil)
// It is instance of `NewViewController` from storyboard
var vc : NewViewController = storyboard.instantiateViewControllerWithIdentifier(NewViewController) as NewViewController
// Pass delegate and variable to vc which is NewViewController
vc.createAccountDelegate = self
vc.teststring = "hello"
vc.transitioningDelegate = self
vc.modalTransitionStyle = UIModalTransitionStyle.CoverVertical
self.presentViewController(vc, animated: true, completion: nil)