我重建而不故事板的应用程序,并且我具有最麻烦被编程导航视图到视图中的一部分。很少有东西写在那里不使用故事板,所以找到答案是困难的。夫特 - 实例化而不故事板导航控制器中应用代表
我的问题很简单。我有我的ViewController
和我的SecondViewController
,我想从前者推到后者。
在AppDelegate
:
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
// Override point for customization after application launch.
window = UIWindow(frame: UIScreen.mainScreen().bounds)
window?.backgroundColor = UIColor.whiteColor()
window?.rootViewController = ViewController()
window?.makeKeyAndVisible()
return true
}
然后在ViewController.swift
:
class ViewController: UIViewController, AVAudioPlayerDelegate, UITextFieldDelegate {
override func viewDidLoad() {
super.viewDidLoad()
startFinishButton.setTitle("Begin", forState: .Normal)
startFinishButton.addTarget(self, action: "moveToSecondViewController", forControlEvents: .TouchUpInside)
view.addSubview <*> startFinishButton
}
func moveToSecondViewController(sender: UIButton) {
let vc = SecondViewController()
println(self.navigationController) // returns nil
self.navigationController?.pushViewController(vc, animated: true)
}
}
印刷self.navigationController
返回nil。我试着这样做:
var navController = UINavigationController()
当ViewController
类创建(但viewDidLoad中之外,对下类声明),并使用navController
VAR进行推送,但是这并没有奏效。
我想也许该解决方案是在应用程序委托,以创建导航控制器,我想整个应用程序将使用一个全局变量?
我希望这篇文章可以成为许多人谁是新的雨燕,并希望从他们的应用程序中删除故事板。
感谢您的关注和帮助。
你有什么自定义的navigationController? – user7097242