一个ViewController中的多个NavigationControllers

时间:2017-05-05 10:12:50

标签: ios swift xcode uinavigationcontroller storyboard

我有一个使用SWRevealViewController创建的滑出菜单。滑出菜单的每一行都连接到NavigationController。 我想两个不同的TableViewController两行连接到同一个带有show segue的ViewController。

This is part of my Storyboard

当我从第一个NavigationController导航时,ViewController正常工作,并且导航栏中设置了单击单元格的描述。

class Details: UIViewController {

var name:String = ""

override func viewDidLoad() {
    super.viewDidLoad()
    self.navigationItem.title = name

    print(name)

}

相反,当我从第二个NavigationController导航时,ViewController不起作用。导航栏未显示,但"名称"打印参数。

有人可以帮我解决这个问题吗?

2 个答案:

答案 0 :(得分:0)

试试这个,看看:

override func viewDidLoad() {
    super.viewDidLoad()

    print(name)
    self.navigationItem.title = name

    if let navController = self.navigationController {
      navController.isNavigationBarHidden = false
    } else {
      print("There is no Navigation Controller. You may not be showing this controller using 'navigation push'")
    }


 }

答案 1 :(得分:0)

您可以添加代码并输入索引号。和单元格的标题:

override func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath)
{

    switch (indexPath.row)
    {
    case 2: name = "yourFirstNavigationTitleName"
        break
    case 3: name = "yourSecondNavigationTitleName"
        break
    default: break
    }

}