ios - 在 Xcode 中识别静态单元格的正确方法?

标签 ios swift uitableview

我有一个 TableView Controller ,我覆盖了这个函数:

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = tableView.dequeueReusableCell(withIdentifier: "myCell", for: indexPath)

    // Configure the cell...

    return cell
    }

我的单元格标识符是 myCell。我创建了 4 个静态单元格,然后进入每个单元格并为每个单元格指定标识符 myCell。但是,由于无法识别单元格标识符而导致崩溃。但是,如果我更改为动态原型(prototype),为单元格提供 myCell 标识符,它就会按预期工作。我想现在就可以了……因为我可以动态地告诉它我想要多少个单元格。但我真的很想知道为什么我的静态单元格没有使用完全相同的方法。有什么想法吗?

最佳答案

当您有静态单元格(即一组小的、固定的静态单元格,而不是具有单元格原型(prototype)的动态单元格时,您可以控制将动态生成哪些类型的单元格的数量),您不应该实现任何UITableViewDataSource方法。只需为静态单元格中的各种控件创建 IBOutlet 引用并更新它们,就像您根本不使用 UITableView 一样。


顺便说一句,如果您使用的是动态单元格,则永远不会为两个不同的单元格原型(prototype)提供相同的重用标识符。重用标识符的目的是让它知道要使用哪个单元格原型(prototype),因此为多个单元格原型(prototype)提供相同的标识符没有任何意义。

关于ios - 在 Xcode 中识别静态单元格的正确方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55253669/

相关文章:

ios - knocktounlock 如何工作?

javascript - 如何在 React-native 中获取 NavigatorIOS 的 'child controllers' 引用?

ios - UITableView 内部的 UIScrollView 搞乱了

ios - Xcode UITableView 自定义单元 xib 图像高度

iphone - GSEventCreateKeyEvent

swift - Collection View 单元格内 Collection View 的 ScrollTo indexPath(嵌套 CollectionView)

ios - 如何在 CNContact 中快速查看联系人来源?

swift - 如何从开关盒中获取 NSLayoutAnchor?

swift - TableView cellForRowAtIndexPath 警告

iOS HealthKit 在 session 期间跟踪用户步数