首页 > 解决方案 > UI Button 为 nil,obj c

问题描述

在我的cellForRowAtIndexPath:方法中,我试图将tag我的按钮设置为等于indexPath.row. 但是,按钮是nil,因此tagnil

有谁知道为什么?这是我在视图控制器的单元格中制作的按钮。

编辑:我的 postCell 不是零。只有与单元格关联的按钮为 nil 并且我尝试在 VolunteerOpportunityCell 中分配和初始化 favoriteButton,特别是在 awakeFromNib 方法中。但它不允许我调用 alloc 方法。

标签: iosobjective-cxcode

解决方案


你不应该打电话dequeueReusableCellWithIdentifier。它可以返回nil,在这种情况下,你postCell的存在nil以及与之相关的一切都是nil。您没有检查它是否为nil,因此您显然不了解有关如何dequeueReusableCellWithIdentifier工作的基本事实。但这没关系,因为你不应该首先调用它。

相反,调用dequeueReusableCellWithIdentifier:forIndexPath:. 它永远不会nil。它将提供一个单元,现在您有机会配置该单元。


推荐阅读