好的 -
我有UITabBarController
。它由4个导航控制器组成。
当我选择一个标签时,UITableView
呈现。
当我选择一个单元格时,新的UITableview
被正确地推送到导航堆栈上。
当我在这个UITableView
中选择一个单元格时,它不会将新控制器推送到导航堆栈,而是似乎跳转到UITabBarSelection和它的根视图控制器。
这是最后的选择:
let storyboard2 = UIStoryboard(name: "Main-NewUI", bundle: nil)
let vc = storyboard2.instantiateViewController(withIdentifier: "SubProductsScene") as! SubProductTableViewController
let theSubCategory = _searchFetchedResultsController?.fetchedObjects![indexPath.row]
vc.currentShelfCat = theSubCategory
vc.title = theSubCategory!.shelfCategoryDesc!
let backButtonText = ""
self.navigationItem.backBarButtonItem = UIBarButtonItem(title:backButtonText, style: UIBarButtonItemStyle.plain, target: nil, action: nil)
// self.present(vc, animated: true, completion: nil)
navigationController!.pushViewController(vc, animated: true)
现在,如果我使用self.present
,它会将视图控制器正确渲染为模态。但这不是我想要的。是什么让它跳转到其中一个标签的根视图控制器?
该标签的rootviewcontoller
为ProductListTableViewController
。但是,我将其子类化为SubProductTableViewController
,甚至给它自己的布局。