在我的iOS应用程序中,我希望在得到肯定结果后,屏幕切换回上一屏幕。在我的情况下,我将从UITableViewController切换回另一个UITableViewController。我尝试过:
self.dismissViewControllerAnimated(true, completion:nil)
但它不起作用,什么都没有出现。 我也尝试过:
let mainStoryboard = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle())
let vc : UITableViewController = mainStoryboard.instantiateViewControllerWithIdentifier("Tasks") as UITableViewController
self.presentViewController(vc, animated: true, completion: nil)
但是我在方法viewWillAppear()中遇到“致命错误:在解包一个Optional值时意外发现nil”:
self.navigationController!.editButtonItem().title = "Modifica"
我可以避免从界面构建器添加另一个反向segue,然后执行performSegueWithIdentifier()。是不是有更快的方式?
答案 0 :(得分:2)
您使用的是UINavigationController
吗?如果是这样,您只需拨打navigationController?.popViewControllerAnimated(true)
即可转到上一个屏幕。
如果您没有使用UINavigationController
,则可以致电dismissViewControllerAnimated(true, completion: nil)
以获得相同的结果。
在这两种情况下,您都不需要使用已隐含的self
。