gpt4 book ai didi

ios - 无法启动 UICollectionViewController

转载 作者:行者123 更新时间:2023-11-28 05:40:38 25 4
gpt4 key购买 nike

我可以使用以下代码从 appdelegate 启动 FriendsController(UICollectionViewController):

window = UIWindow(frame: UIScreen.main.bounds)window?.makeKeyAndVisible()


let layout = UICollectionViewFlowLayout()
let friendsController = FriendsController(collectionViewLayout: layout)
window?.rootViewController = UINavigationController(rootViewController: friendsController)

这是 FriendsController.swift 的样子,你可以自己尝试一下,看看它是否有效:

https://gist.github.com/naderahmedtao/c64d09a3ca62549a015d8df62842b53f

但是,现在我想从 ViewController 启动 FriendsController 但什么也没有发生。

这是我尝试过的:

let friendsController = FriendsController()
self.navigationController?.pushViewController(friendsController, animated: true)

我也试过这个:

    let layout = UICollectionViewFlowLayout()
let controller = FriendsController(collectionViewLayout: layout)
navigationController?.pushViewController(controller, animated: true)

我希望 FriendsController 从 VC 启动,但它没有,它只能从 appdelegate 运行。

更新:我刚刚验证了 navigationController 是 nil !但是,我不想从 appdelegate 启动托管 VC,因为它附加到 Storyboard......有什么解决方案吗?

最佳答案

您需要为 navigationController? AppDelegate 中的第一个 vc 设置导航,而不是像 nil 那样

let vc = FirstVC()
window?.rootViewController = UINavigationController(rootViewController: vc)

之后做

let friendsController = FriendsController(collectionViewLayout:UICollectionViewFlowLayout())
navigationController?.pushViewController(controller, animated: true)

选择 vc ,然后从 Editor

enter image description here


你也可以加载它

 let vc = UIStoryboard(name: "Main", bundle: nil).instantiateViewController(withIdentifier: "FirstID") as! FirstVC
window?.rootViewController = UINavigationController(rootViewController: vc)

关于ios - 无法启动 UICollectionViewController,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56888907/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com