Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 展示collectionview的问题_Ios_Swift_Uicollectionview - Fatal编程技术网

Ios 展示collectionview的问题

Ios 展示collectionview的问题,ios,swift,uicollectionview,Ios,Swift,Uicollectionview,我想在用户点击按钮时显示一个视图控制器。 但是,我收到了错误消息: UICollectionView必须使用非nil布局参数初始化 但是我确定我在viewDidLoad中设置了布局 有什么建议吗 这是密码 这里是我展示视图控制器的地方 func handleLogout(){ print("logout") let loginController = LoginController() present(loginController, animated: true,

我想在用户点击按钮时显示一个视图控制器。 但是,我收到了错误消息:

UICollectionView必须使用非nil布局参数初始化

但是我确定我在viewDidLoad中设置了布局

有什么建议吗

这是密码

这里是我展示视图控制器的地方

func handleLogout(){

    print("logout")

    let loginController = LoginController()

    present(loginController, animated: true, completion: nil)

}
这是登录控制器viewDidLoad

override func viewDidLoad() {
    super.viewDidLoad()

    let layout:UICollectionViewFlowLayout = UICollectionViewFlowLayout.init()

    collectionView?.setCollectionViewLayout(layout, animated: true)
    collectionView?.delegate = self
    collectionView?.dataSource = self
    collectionView?.backgroundColor = UIColor.white
}

如果有什么问题的话,我想我可能需要在演示之前对它进行初始化。我不太清楚该怎么做。

事实证明,我正确地怀疑collectionview必须在演示之前初始化

就是这样做的

    let layout = UICollectionViewFlowLayout()

    let loginController = LoginController(collectionViewLayout: layout)

事实证明,我正确地怀疑collectionview必须在演示之前初始化

就是这样做的

    let layout = UICollectionViewFlowLayout()

    let loginController = LoginController(collectionViewLayout: layout)
UICollectionView必须使用非nil布局参数初始化

它说您需要使用
initWithFrame:collectionViewLayout:
以编程方式启动
collectionView

UICollectionView必须使用非nil布局参数初始化


它说您需要使用
initWithFrame:collectionViewLayout:
以编程方式启动
collectionView

您是如何启动
collectionView
的?您是如何启动
collectionView
的?