无法在View Controller iOS Swift中显示TABBAR



收到推送通知时,我正在尝试导航到表视图控制器(ReportTVC(。我的故事板中的视图控制器的层次结构如下所示。

TABBARCONTROLLER->导航控制器(故事板ID:casesNavController( -> tableViewController(CasesTVC( -> tableViewController( CaseSummaryTVC( -> tableViewController(ReportTVC(

ReportTVC正在与预期的导航控制器一起显示,但是当我导航返回casestvc时,我应该有一个带有选项卡的tabar,,但这是缺少的

有人可以建议我如何解决这个问题?

在AppDelegate.Swift中:

let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
let navController = mainStoryboard.instantiateViewController as! UINavigationController
let reportTVC = mainStoryboard.instantiateViewController(withIdentifier: "ReportTVC") as! ReportTVC
reportTVC.obtainDoctorReport = true
reportTVC.caseId = caseId

navController.pushViewController(reportTVC, animated: true)
self.window?.rootViewController = navController
self.window?.makeKeyAndVisible()

这里的问题是,您将导航controller设置为AS rootviewController,您需要将TABBARCONTROLLER设置为root。

let mainStoryboard = UIStoryboard(name: "Main", bundle: nil)
let navController = mainStoryboard.instantiateViewController(withIdentifier: "Nav") as! UINavigationController
let tabController = mainStoryboard.instantiateViewController(withIdentifier: "Tab") as! UITabBarController
let reportTVC = mainStoryboard.instantiateViewController(withIdentifier: "ReportTVC") as! ReportTVC
reportTVC.obtainDoctorReport = true
reportTVC.caseId = caseId
navController.pushViewController(reportTVC, animated: true)
tabController.setViewControllers([navController], animated: false)
self.window?.rootViewController = tabController
self.window?.makeKeyAndVisible()

您不应该忘记,您还需要在TabbarviewController中添加其他ViewController。

最新更新