XCode swift 3如果当前viewController在tableView中导航didSelect

问题描述:

我想导航到一个特定的viewController。我有两个viewControllers相同的tableView插座一个是主要的VC和第二个是requestHistory VC。例如,如果用户在第一个viewController上并选择tableview中的单元格,它应该导航到特定的viewController,如果用户在第二个VC上并且选择了应该重定向到另一个VC的同一个单元,则它应该导航到第二个VC。请注意,我使用相同的表格视图单元插座VC和所需的结果是每个VC故事板应重定向到他们的具体destination.i'm不知道我面临的错误 这里是我的代码所以远:XCode swift 3如果当前viewController在tableView中导航didSelect

func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { 
    print("Row \(indexPath.row) selected") 

    var currentStoryboard = UIStoryboard(name: "DoctorHomeViewController", bundle: nil) 

    if currentStoryboard == "DoctorHomeViewController" { 
    let storyboardd = UIStoryboard(name: "DoctorHome", bundle: Bundle.main) 
    let eventViewController = storyboardd.instantiateViewController(withIdentifier: "EventDetailsNav") as? UIViewController 
    self.navigationController?.pushViewController(eventViewController!, animated: true) 
    } 

    else{ 
     let storyboardd = UIStoryboard(name: "DoctorHome", bundle: Bundle.main) 
     let eventViewController = storyboardd.instantiateViewController(withIdentifier: "RequestsHistory") as? UIViewController 
     self.navigationController?.pushViewController(eventViewController!, animated: true) 
    } 
    } 
} 

任何帮助将是非常可观的。

+0

问题不清楚..请详细说明。 –

+0

请详细说明你想要做什么。 – PGDev

首先,您需要在身份检查器中为故事板中的相应视图控制器标记“使用故事板ID”,然后获取故事板ID并将其与yourView控制器进行比较。

let currentStoryboard : String! = self.restorationIdentifier 
    if currentStoryboard == "DoctorHomeViewController" { 
     let storyboard = UIStoryboard(name: "DoctorHome", bundle: Bundle.main) 
     let eventViewController = storyboard.instantiateViewController(withIdentifier: "EventDetailsNav") as! EventDetailsNav 
     self.navigationController?.pushViewController(eventViewController!, animated: true) 
    } 

    else{ 
     let storyboard = UIStoryboard(name: "DoctorHome", bundle: Bundle.main) 
     let eventViewController = storyboard.instantiateViewController(withIdentifier: "RequestsHistory") as RequestsHistory 
     self.navigationController?.pushViewController(eventViewController!, animated: true) 
    } 

希望这会帮助你。

+0

它没有与我一起工作,请参阅编辑文本 –

+0

你正在得到什么错误? – Pankaj