后退按钮不起作用当我切换到TabBarController里面的另一个ViewController
问题描述:
后退按钮不起作用当我切换到另一个TabBarController内部的ViewController并试图返回时。后退按钮不起作用当我切换到TabBarController里面的另一个ViewController
override func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let detailVC = NewDetailController()
navigationController?.pushViewController(detailVC, animated: true)
}
我觉得问题在于我如何创建detailVC。但不知道有什么问题。
创建TabBarController:
class MainTabBarController: UITabBarController {
override func viewDidLoad() {
super.viewDidLoad()
// New View Controller
let newController = NewController()
let newNavController = UINavigationController(rootViewController: newController)
viewControllers = [newNavController]
} }
设置的UITabBarController作为初始中的AppDelegate:
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
// Override point for customization after application launch.
window = UIWindow(frame: UIScreen.main.bounds)
window?.makeKeyAndVisible()
let mainVC = MainTabBarController()
window?.rootViewController = UINavigationController(rootViewController: mainVC)
return true
}
之前,我设置的UITabBarController作为我rootVC一切正常。
PS:我没有使用故事板。一切都以编程方式完成。
答
Ohh Well 感谢穆罕默德,他给了我一个关键点。
问题是我将TabBarController嵌入到AppDelegate的UINavigationController中。
当我删除UINavigationController时,一切都很好!
let mainVC = MainTabBarController()
window?.rootViewController = mainVC
分享一些更深的见解plz – Mukesh
当你说“不起作用”时,你是什么意思。什么都没有发生? –
是的。什么都没发生。 –