Ios registerClass和RegisterInB UICollectionView之间的差异
我有一个Ios registerClass和RegisterInB UICollectionView之间的差异,ios,objective-c,uicollectionview,Ios,Objective C,Uicollectionview,我有一个UICollectionView,其中显示了3种不同类型的自定义单元格。每个单元格在单独的xib中定义。以前,我使用registerClass在UICollectionView中注册cell类。在单元格的初始化器中,我习惯于从nib文件加载视图。使用这种方法,当它进入cellForItemAtIndexPath中的出列单元时,很少记录到随机崩溃,异常被忽略 由于未捕获的异常“NSInvalidUnarchiveOperationException”而终止应用程序,原因:“无法实例化名为(
UICollectionView
,其中显示了3种不同类型的自定义单元格。每个单元格在单独的xib中定义。以前,我使用registerClass在UICollectionView
中注册cell类。在单元格的初始化器中,我习惯于从nib文件加载视图。使用这种方法,当它进入cellForItemAtIndexPath
中的出列单元时,很少记录到随机崩溃,异常被忽略
由于未捕获的异常“NSInvalidUnarchiveOperationException”而终止应用程序,原因:“无法实例化名为(null)的类”
准确地说,当它试图从nib加载传感器时,发生了上述异常。现在我用registerNib
替换了registerClass
,为UICollectionView
重新注册nib文件单元标识符,并从单元初始化器中删除nib加载代码。从那以后,再也没有关于这起坠机事件的报道
我可以知道registerClass和RegisterNB的实际区别吗?另外,为
UICollectionView
指定单元格的最佳方式是什么?如果单元格类是用代码编写的,请使用registerClass:方法。
如果单元格包含在Interface Builder NIB文件中,则使用registernb:方法。文档说明了什么如果这两个都是真的?@lulian registerBIF如果您对单元格使用xib,请仅使用register nib。如果在register nib之后调用register类,可能会出现应用程序崩溃之类的问题