UICollectionView未在iOS8中显示

UICollectionView未在iOS8中显示,ios8,uicollectionview,Ios8,Uicollectionview,我对iOS编程还不熟悉。我正在尝试创建一个UICollectionView来显示图像网格。我遵循了本教程:并执行了以下步骤: 将Xcode中的UICollectionView放入我的视图 类未设置为任何内容 在我的视图控制器中为此UICollectionView创建了一个outlet属性,并将视图控制器声明为UICollection视图的数据源和委托,如下所示: @interface appViewController:ViewController @结束 将布局属性设置为“流动”,滚动方向设置

我对iOS编程还不熟悉。我正在尝试创建一个UICollectionView来显示图像网格。我遵循了本教程:并执行了以下步骤:

  • 将Xcode中的UICollectionView放入我的视图
  • 类未设置为任何内容
  • 在我的视图控制器中为此UICollectionView创建了一个outlet属性,并将视图控制器声明为UICollection视图的数据源和委托,如下所示:
    @interface appViewController:ViewController
    @结束
  • 将布局属性设置为“流动”,滚动方向设置为水平
  • 创建了一个xib(视图)删除了默认视图并放置了一个UICollectionViewCell并用UIImage填充它(将UICollectionViewCell的标识符设置为“appCell”
  • 创建了一个类(UICollectionViewCell子类)并为UIImage创建了一个出口
  • 类,XIB都命名为相同的-appNameCellCollectionViewCell(.h、.m、.XIB)
  • 在viewController的viewDidLoad中输入以下代码:
    
    [self.outletUICollectionView注册表项nb:[UINib nibWithNibName:@“appCellCollectionViewCell”捆绑包:nil]forCellWithReuseIdentifier:@“appCell”];
    
  • 在viewController中实现numberOfItemsInSection、numberOfSectionsInCollectionView、cellForItemAtIndexPath,如下所示: -(appCellCollectionViewCell*)collectionView:(UICollectionView*)collectionView cellForItemAtIndexPath:(NSIndexPath*)indexPath{ appCellCollectionViewCell*cell=[collectionView dequeueReusableCellWithReuseIdentifier:@“appCell”forIndexPath:indexPath]; cell.appCellImage.image=[设置图像]; 返回单元; }
  • 我知道我应该在视图控制器中将插座的数据源和委托设置为self,但我不确定具体在哪里设置。我尝试在视图中进行设置,在步骤8代码的上方和下方都加载了,但没有区别。我得到了一个黑色区域,而不是UICollectionView

    我检查了UIImage是否存在以及所有内容。我想我遗漏了一些东西,请帮帮我


    谢谢

    黑色区域可能是由于故事板和代码之间没有连接某些东西

    如果您无法从情节提要中找到它,请尝试在代码中设置断点,并检查出口是否为零

    您可以在代码中设置委托和数据源,但通过故事板设置所有内容要干净得多⌥⌘6打开连接检查器,然后控制从连接到情节提要中的视图控制器(或控件)的拖动

    除非您有特定的原因,否则您可能会发现使用
    UICollectionViewController
    比使用
    UIViewController
    容易得多。它将为您处理许多事情,并使您的代码更简单

    更新:

    你在尝试使用别人的代码,而你是iOS新手。只要看看你与我共享的代码,我就能发现对象命名不正确,而且你犯了错误,比如试图将一种类型的对象分配给另一种类型

    您可能现在正试图同时处理键盘扩展、云、第三方框架和NIB,而这并不能帮助您了解视图、视图控制器、使用Xcode以及如何连接插座等基础知识

    • 我真的建议退一步,看看苹果的 。这将帮助您学习Xcode,以及如何 使用故事板,以及如何连接插座和代理

    • 在您阅读了Apple的教程之后,想开始您的 应用程序创意,尝试只关注一个特定方面。寻找
      UICollectionViewController
      使用集合视图和 故事板中的集合视图单元格。具有 很多很棒的教程。了解如何在 那个项目。忽略笔尖,键盘扩展,从 云彩等

    • 一旦您了解了这些基本知识,就可以开始移动
      UICollectionViewCell
      到nib,并获取您的故事板
      UICollectionView
      UICollectionViewController
      使用nib

    学习和构建基础知识将使您了解如何将图像从云端加载到集合视图中

    您现在在评论中寻求的帮助是,为什么视图控制器无法将单元格出列。这是因为代码连接不正确。这就是为什么我建议您学习基础知识,这样您就知道如何调试此类基本内容,了解它崩溃的原因,以及如何修复它


    学习和开发iOS应用程序是一件令人愉快的事情,但我认为如果你在尝试处理涉及键盘扩展和第三方框架的更复杂项目之前先学会了基本知识,你会不会感到沮丧。

    嗨,佩塔,谢谢你。我还试着用故事板连接数据源和委派。这不管用疗法:(我设置了断点,我可以看到控件运行并执行所有语句。我看到集合视图本身已连接。数据源和委托也已连接。集合视图单元格已连接到所述的自己的类。如果我发布源代码,是否会有所帮助。让我试试。同时,还有什么我可能缺少的吗。我也会再检查一次。你好,佩塔。你能看一下吗。基本上我有一个iOS 8键盘扩展,我正在其中尝试显示集合视图。一个包含云代码的嵌入式框架。在我连接数据源和委托后,我没有得到黑色区域。我试着调试和检查。控件似乎来到了cellForItemAtIndexPath:方法,并且永远不会到达第二行。该控件似乎在执行d时终止