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)
}
}
}
任何帮助将是非常可观的。
首先,您需要在身份检查器中为故事板中的相应视图控制器标记“使用故事板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)
}
希望这会帮助你。
它没有与我一起工作,请参阅编辑文本 –
你正在得到什么错误? – Pankaj
问题不清楚..请详细说明。 –
请详细说明你想要做什么。 – PGDev