2017-09-12 103 views
0

我已经创建了一个TableViewController并在navigationController(无故事板)嵌入了:怎么推编程制成视图控制器迅速3

class editFullnameNavigationController: UINavigationController { 

override func viewDidLoad() { 
    super.viewDidLoad() 
    self.setToolbarHidden(false, animated: true) 
} 

override init(rootViewController: UIViewController) { 

    let editFullnameTableViewControllerClass = editFullnameTableViewController(style: .grouped) 

    super.init(rootViewController: editFullnameTableViewControllerClass) 

} 

required init?(coder aDecoder: NSCoder) { 
    fatalError("init(coder:) has not been implemented") 
} 

override init(nibName nibNameOrNil: String?, bundle nibBundleOrNil: Bundle?) { 
    super.init(nibName: nibNameOrNil, bundle: nibBundleOrNil) 
} 

} 

class editFullnameTableViewController: UITableViewController, UITextFieldDelegate { 

} 

我想与使用触摸在另一个viewController一个按钮按下这个editFullnameTableViewController

let editfullnameNavigationControllerPage = editFullnameNavigationController(rootViewController: editFullnameTableViewController(style: .grouped)) 
self.navigationController?.pushViewController(editfullnameNavigationControllerPage, animated: true) 

但它不工作。我怎样才能做到这一点?谢谢。

+0

子类化'UINavigationController'在大多数情况下都是错误的。 – dasdom

+0

你可以分享代码,你是如何初始化viewController的。 – AshokPolu

回答

0

只需创建一个实例视图控制器推到的ViewController

let controller = editFullnameTableViewController() 
self.navigationController?.pushViewController(controller, animated: true) 
0

NavigationController子类不能NavigationController堆栈推

你可以用本发明的方法目前它

//create instence 
let navController = editFullnameTableViewController() //Navigation controller 
//present method 
self.navigationController?.present(navController, animated: true, completion: nil) 

或者你可以将新导航控制器设置为窗口的根号码

self.window?.rootViewController = navController 
+0

可能你也可以使用self.show()方法 – Abhishek

相关问题