[英]How to launch a ViewController from a Non ViewController class?
[英]how to launch ViewController
我正在編寫本教程: https://www.letsbuildthatapp.com/course_video?id=4562
: https://www.letsbuildthatapp.com/course_video?id=4562
(您可以下載源代碼)
VC 是從 appdelegate 啟動的,代碼如下:
window = UIWindow()
window?.rootViewController = StretchyHeaderController(collectionViewLayout: StretchyHeaderLayout())
但是,我想從另一個 ViewController 啟動 StretchyHeaderController,而不是 appDelegate。
這是我嘗試過的:
let newViewController = StretchyHeaderController()
self.navigationController?.pushViewController(newViewController, animated: true)
但什么也沒有發生。 如何啟動 StretchyHeaderController?
這是 shwat StretchyHeaderController 看起來像:
class StretchyHeaderController: UICollectionViewController, UICollectionViewDelegateFlowLayout {
如果你想從另一個視圖控制器呈現StretchyHeaderController
確保視圖控制器嵌入在UINavigationController
。
否則什么都不會發生。
嘗試
print(self.navigationController?)
在您的代碼之前並確保它沒有打印nil
。
您必須使用UINavigationController
將 viewCONtroller 推送到導航堆棧中。 如果你沒有使用UINavigationController
,那么你可以展示 viewController
let viewController = StretchyHeaderController(collectionViewLayout: StretchyHeaderLayout())
self.present(viewController, animated: true, completion: nil)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.