Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/26.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作为子视图添加到viewcontroller_Ios_Objective C_Uiviewcontroller_Uicollectionview - Fatal编程技术网

Ios 如何将collectionview作为子视图添加到viewcontroller

Ios 如何将collectionview作为子视图添加到viewcontroller,ios,objective-c,uiviewcontroller,uicollectionview,Ios,Objective C,Uiviewcontroller,Uicollectionview,当我想将collectionview作为子视图添加到ProfileViewController时,我的collectionview出现了一个小问题。当我想重新加载collectionview时出现问题,xcode给我一个错误属性“collectionview”,在ProfileViewController类型的对象上找不到。 我怎样才能克服这个问题?我是否需要在ProfileViewController上创建新的collectionview类文件并将其设置为collectionview?下面是我

当我想将collectionview作为子视图添加到ProfileViewController时,我的collectionview出现了一个小问题。当我想重新加载collectionview时出现问题,xcode给我一个错误属性“collectionview”,在ProfileViewController类型的对象上找不到。 我怎样才能克服这个问题?我是否需要在ProfileViewController上创建新的collectionview类文件并将其设置为collectionview?下面是我的故事板的图片

故事板的图像位于此链接处。
我无法将图像附加到此帖子,因为我的声誉很低。

您需要确保您的ProfileViewController符合UICollectionViewDataSource和UICollectionViewDelegate协议,并且当您在ProfileViewController内创建集合视图时,请确保:

collectionView.delegate = self;
collectionView.dataSource = self;

听起来您正在尝试使用self.collectionView,而ProfileViewController上不存在该属性。

那么视图是否最初加载,并且仅在尝试重新加载集合视图时才会给出错误?或者,在加载包含集合视图的视图时是否会立即发生崩溃。您遇到的错误通常是由于对象上的插座集不再存在,插座在IB中连接,然后在代码中删除。您必须将情节提要中的视图连接到代码中的IBOutlet。Xcode不会为您这样做,Xcode只在您将CollectionViewController添加到情节提要时才这样做。如果你调用IBOutlet collectionView,你的代码应该可以工作。我已经在ProfileViewController上安装了。我还尝试将collectionView.delegate=self;和collectionView.dataSource=self;在ProfileViewController中,但我的xcode给了我一个错误。下面是.h和.m文件的图像。h file.m文件在何处创建集合视图?如果未在视图控制器上添加collectionView属性,则无法引用self.collectionView。创建collectionView是什么意思?我只是拖出collectionview,并使用情节提要将其放入ProfileViewController中。这是my.h和.m code.h file.m文件,您可以使用interface builder拖动集合视图,但要从代码中访问它,您需要在代码中创建一个IBOutlet属性,该属性附加到nib中的集合视图。如果没有这些,系统就不知道nib中的集合视图与您在代码中引用的集合视图相同。谢谢大家。我最终解决了问题,为collection view创建了一个新的IBOutlet连接,并将collectionview委托和collectionview数据源自连接。