程序已经有雏形,xxxNavigationController压进一个登录xxxViewController,登录成功后跳转xxxTableViewController(简称tvc)。
现添加xxxTabBarController,删除item后重新将tvc添加到tabbar上,结果控制器上并不显示之前的NavigationBar内容。
原因
因为修改后的tvc这个控制器并不在xxxNavigationBarController上,所以无法在页面上方显示item。
解决方法1
之前写在tvc中的添加navigation item的方法应该统一移动至xxxTabBarController中,并调试
解决方法2
不用调试,直接将tvc的添加item语句
self.navigationItem.rightBarButtonItem = xxxButton;
修改为
self.parentViewController.navigationItem.rightBarButtonItem = xxxButton;
(没错,让他的父控制器也就是xxxTabBarController自己添加)
问题出现的原因是因为自己对开发的逻辑结构不够了解。
网友评论