Swift 中自定义 UICollectionViewCell 上的标签插座导致Optional.None崩溃

2024-01-11

我有一个 collectionViewController,我想显示一堆带有一些标签的自定义 UICollectionViewCells。不幸的是,每当我尝试访问自定义 UICollectionViewCell 的标签时,它都会导致崩溃:

Console

致命错误:无法解开Optional.None

Window

线程1:EXC_BAD_INSTRUCTION(代码= EXC_1386_INVOP,子代码= 0x0)

我正在尝试像这样访问标签:

cell.name.text = names[indexPath!.item]

也许这是因为我的奥特莱斯标签为零?但环顾四周寻找答案没有任何效果,因为我不太确定问题正在添加什么?/!在我的代码中并没有真正的帮助。

MyCustomUICollectionViewController

class ScrambledTextCollectionViewController: UICollectionViewController {

    var names: String[] = ["Anna", "Alex", "Brian", "Jack"]

    override func viewDidLoad() {
        super.viewDidLoad()

        // Register cell classes
        self.collectionView.registerClass(MyCustomCollectionViewCell.self, forCellWithReuseIdentifier: reuseIdentifier)

    }

    override func numberOfSectionsInCollectionView(collectionView: UICollectionView?) -> Int {
        return 1
    }

    override func collectionView(collectionView: UICollectionView?, numberOfItemsInSection section: Int) -> Int {
        return names.count
    }

    override func collectionView(collectionView: UICollectionView?, cellForItemAtIndexPath indexPath: NSIndexPath?) -> UICollectionViewCell? {
        var cell = collectionView?.dequeueReusableCellWithReuseIdentifier("Cell", forIndexPath: indexPath) as MyCustomCollectionViewCell

        cell.name.text = names[indexPath!.item]

        return cell
    }
}

我的自定义集合视图单元格

class MyCustomCollectionViewCell: UICollectionViewCell {

    @IBOutlet var name: UILabel
    init(frame: CGRect) {
        super.init(frame: frame)                
    }
}

找到了答案here https://stackoverflow.com/questions/25165195/why-is-uicollectionviewcells-outlet-nil

Remove, self.collectionView.registerClass(MyCustomCollectionViewCell.self, forCellWithReuseIdentifier: reuseIdentifier)

阅读链接了解详细原因

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Swift 中自定义 UICollectionViewCell 上的标签插座导致Optional.None崩溃 的相关文章

随机推荐

  • 如何防止在代码更改时必须重建映像

    我开始在个人项目中使用 Docker 并意识到这将我的开发时间增加到了无法接受的程度 如果我必须为每次代码更改重建映像 我宁愿启动 LXC 实例 我听说有一种方法可以安装它 但不确定具体如何进行 我还有一个 docker compose y
  • 删除[]对象数组

    我已经分配了对象数组 Objects array new Objects N 我应该如何删除这个数组 只是 delete array 或者迭代数组的元素 for int i 0 i
  • Jinja2 中的稳定排序

    可以应用排序过滤器 http jinja pocoo org docs templates sort在 Jinja2 中 首先按一个属性对列表进行排序 然后再按另一个属性排序 这似乎是很自然的事情 但在我的测试中 前面的排序完全不稳定 所有
  • 如何检测正在使用哪个 .NET 运行时(MS 与 Mono)?

    我想知道程序执行期间是使用 Mono 运行时还是 Microsoft 运行时执行 我当前正在使用以下代码来确定我是否在 MS CLR 上 static bool IsMicrosoftCLR return RuntimeEnvironmen
  • 如何确定分离的 pthread 是否还活着?

    如何确定分离的 pthread 是否仍然存在alive 我有一个与线程的通信通道 一个从线程向外指向的单向队列 但是如果线程dies没有喘息 我应该放弃使用流程吗signals或者我可以probe以某种方式提高线程活力 对于可连接 即不分离
  • 将 for wait...of 与同步迭代一起使用

    MDN says https developer mozilla org en US docs Web JavaScript Reference Statements for await of for await of有两个用例 The f
  • 选择文本并从标签 Xamarin 表单中复制

    几天来 我一直在不同的论坛上阅读有关选择文本并从 xamarin 表单中的标签本地复制文本的问题 这似乎不是实现此目的的直接方法 我的问题是 我需要在标签中显示书中的大量数据 并且用户应该能够从标签中选择和复制文本块 我继续在编辑器组件中呈
  • 将只读导航属性配置为构造函数参数

    我有以下型号 public class Session public string Id get set public IList
  • 根据数据内容创建 RecyclerView 项目布局

    我正在创建数据对象的回收器视图 每个对象都会有所不同 例如 对象1 字符串标题 字符串描述 图像 对象2 字符串描述 对象3 图像 字符串链接 目标4 字符串描述 视频 etc 因此 我需要动态创建项目布局以适合每个数据对象 我不想创建一个
  • 如何在 PowerShell 中使用 REST API 在 TFS 中创建错误?

    我正在尝试使用 PowerShell 中的 REST API 使用下面的代码在 TFS 中创建一个错误 但我无法弄清楚如何填充 Bug具有这些参数和数据名称的变量 Param string vstsAccount MyAccountName
  • 安装插件后在 Firefox 中打开我的页面

    HI 我正在尝试在安装后第一次重新启动 Firefox 后打开我的主页 为此 我在加载页面上添加事件处理程序 并检查该事件第一次执行的位置 window addEventListener load initializeOverlay fal
  • 在 R 中将 unicode 字符保存为 .pdf

    我想将特定的 unicode 字符保存到 pdf 文件中ggsave 示例代码 library ggplot2 ggplot geom point data data frame x 1 y 1 aes x y shape u2191 ge
  • ArrayList中存储不同类型

    我想将元素存储在列表中 每个元素有4个参数 我正在尝试创建一个数组列表 为每个元素存储 4 个参数 它们是不同类型的 iD intx位置 浮动y 位置 浮动名称 字符串 I use ArrayList
  • SyntaxError:使用 jQuery.ajax() 的标签无效

    我正在尝试使用以下命令对我的服务器进行 Ajax 调用jQuery call ajax type GET dataType jsonp url http iceworld sls atl com api cmd time success f
  • Python 检查 gzip 存档的完整性

    Python 中有没有办法使用 gzip 或其他模块来检查 gzip 存档的完整性 基本上 Python 中是否有与以下内容等效的内容 gunzip t my archive gz 哎呀 第一个答案 现已删除 是误读问题的结果 我建议使用g
  • 什么是 IllegalStateException?

    我正在尝试使用遵循 Fastload API http developer teradata com doc connectivity jdbc reference current samp T20208JD java txt 连接 等都是
  • CasperJS并发请求

    假设我有一个网址数组 我不想使用打开功能 因为它会等待之前的每个 url 被加载 从而减少加载时间 casper each hrefs function self href self thenOpen href function self
  • Visual Studio 2008 上的 NuPack (NuGet)

    NuPack NuGet 可以安装在 Visual Studio 2008 上吗 不 它仅支持 VS 2010 From NuPack 常见问题解答 http nupack codeplex com wikipage title Frequ
  • 在 Mechanical Turk 中,如何限制每个工人只能获得 1 个 HIT

    我从与 Mechanical Turk 工人的交流中得知 有一种方法可以限制特定工人可以完成的 HIT 数量 但我不知道该怎么做 任何帮助将不胜感激 我开发了一个主要解决这个问题的脚本 主要思想是根据数据库检查工作人员 ID 然后如果工作人
  • Swift 中自定义 UICollectionViewCell 上的标签插座导致Optional.None崩溃

    我有一个 collectionViewController 我想显示一堆带有一些标签的自定义 UICollectionViewCells 不幸的是 每当我尝试访问自定义 UICollectionViewCell 的标签时 它都会导致崩溃 C