[英]How to make viewDidLoad method of ViewController call only once?
[英]how to make viewDidLoad of SwrevealViewController call only once
我正在嘗試使用SWRevealViewController
時僅調用一次視圖控制器的viewDidLoad
。我正在遵循這些教程,並希望做一些小的更改以編程方式加載視圖控制器,而不是使用segues。
我試圖將MenuController
類中的前MenuController
控制器設置為
class MenuController: UITableViewController {
var navcontroller: UINavigationController?
override func viewDidLoad() {
super.viewDidLoad()
navcontroller = self.storyboard?.instantiateViewControllerWithIdentifier("pager") as? UINavigationController
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
// Dispose of any resources that can be recreated.
}
override func viewWillAppear(animated: Bool) {
println("ok this i get called")
}
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
if indexPath.row == 2{
if let temp = navcontroller{
self.revealViewController().setFrontViewController(navcontroller!, animated: true)
}else{
println("navigation controller contains nil vaue")
}
}
}
}
我得到的問題是,當我嘗試一次設置frontViewController時,我得到黑屏... 這是我已經完成的工作
其實一切都很好,只需要另一個方法來調用
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
if indexPath.row == 2{
if let temp = navcontroller{
self.revealViewController().pushFrontViewController(temp, animated: true)
}else{
println("navigation controller contains nil vaue")
}
}
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.