我是iOS
开发的新手。当我点击tableViewCell
我想要移动到新的viewController
时,我想问一件事,但是当我点击它时,它会给我注意。
这是我的代码 -
func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
let row = indexPath.row
if row == 4
{
let storyboard = UIStoryboard(name: "Main", bundle: nil)
let secondViewController = storyboard.instantiateViewControllerWithIdentifier("contact") as! contactsandlists
navigationController?.pushViewController(secondViewController, animated: true)
print("error")
}
请解决我的问题
答案 0 :(得分:0)
尝试使用此演示文稿。
这将显示您的控制器,但它没有导航栏。
self.presentViewController(secondViewController, animated: true, completion: nil)
如果您想使用导航栏。
self.navigationController.pushViewController(secondViewController, animated: true)
答案 1 :(得分:0)
你有一个navigationController吗?如果你不这样做,那么就不会发生任何事情而且你打印出错误"。另一种方法是更改在AppDelegate中找到的窗口属性的根视图控制器
let appDelegate = UIApplication.sharedApplication().delegate
if let window = appDelegate?.window {
window?.rootViewController = secondViewController
window?.makeKeyAndVisible()
}
另一种方法是使用tableviewcell和其他视图控制器之间创建segue并使用performSegueWithIdentifier
。
performSegueWithIdentifier("segueId", sender: nil)
答案 2 :(得分:0)
将NavigationController
设为初始视图。
secondViewController
视图identifier
内使用NavigationController
设置identity inspector
的{{1}},见下图。答案 3 :(得分:0)
1.您必须通过此程序将包含您的tableview的ViewController嵌入到storyboard中
GoTo Storyboard - >单击您的控制器 - >编辑(在顶部菜单中) - >嵌入 - >导航控制器
记下此代码以推送您的控制器
let secondViewController = self.storyboard!.instantiateViewControllerWithIdentifier("contact") as! contactsandlists
self.navigationController.pushViewController(secondViewController, animated: true)