gpt4 book ai didi

ios - 除了从适当的类继承外,还需要采取哪些额外步骤才能在 Xcode 中创建自定义表格单元格?

转载 作者:行者123 更新时间:2023-11-29 02:23:37 25 4
gpt4 key购买 nike

更具体地说,我创建了一个 CollectionView,其中包含一个 CollectionViewCell。在我的 CollectionViewController 代码中是:

override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell

为我完成整个出队单元工作的函数。我已经跟踪了我的程序,它在这一行崩溃了(它将我发送到汇编代码):

let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as CustomCell

但是,当我将“CustomCell”更改为“UICollectionViewCell”时,它工作得很好。这对我来说很奇怪,因为我的 CustomCell 类采用了 UICollectionViewCell 的属性,如以下几行所示:

import UIKit

class CustomCell: UICollectionViewCell {

@IBOutlet var thumbnailImageView: UIImageView!
}

我还在这个 View 的初始化和 Storyboard中设置了 reuseIdentifier。我的问题是:在为表/ Collection View 创建自定义单元格时,需要采取哪些额外步骤?

编辑:这是特定的崩溃屏幕: Crash screen

最佳答案

您需要将 Nib 或类注册为单元格以供重用标识符。在代码中使用这些方法:

func registerClass(_ cellClass: AnyClass!, forCellWithReuseIdentifier identifier: String!)
func registerNib(_ nib: UINib!, forCellWithReuseIdentifier identifier: String!)

崩溃是由于 as 运算符返回一个可选的。它被强制展开并崩溃,因为标识符没有为您的类注册,因此单元格是 UICollectionViewCell,而不是您的自定义类。

参见: https://developer.apple.com/library/prerelease/ios/documentation/Swift/Conceptual/Swift_Programming_Language/TypeCasting.html#//apple_ref/doc/uid/TP40014097-CH22-ID338

关于ios - 除了从适当的类继承外,还需要采取哪些额外步骤才能在 Xcode 中创建自定义表格单元格?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27816376/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com