UITableView静态单元格中的IBOutlets

时间:2015-08-01 01:50:44

标签: swift uitableview cell iboutlet custom-cell

我创建了一个UITableView(和相关的类),有两个部分:

  • 第一个是静态自定义单元格
  • 第二个是原型单元

为了控制静态单元格,我实现了一个类,在该类中,我将IBOutlet添加到静态单元格中的对象(例如label)。当我尝试访问控制表视图的类中的那个插座时,我收到此错误:

  

outlet不存在

我做了一个video,以便更好地解释我的问题。

1 个答案:

答案 0 :(得分:4)

简短版

UITableView不能同时是静态单元格动态原型内容。你需要挑选一个或另一个。

因为您需要动态原型,请使用动态原型

长版

创建动态原型的步骤:

  1. IB >中选择您的表格视图Show Attributes Inspector>表格视图>内容>动态原型
  2. IB >部分开始显示对象库,将多个表格视图单元格拖动到表格视图中,因为您有单元格类型。
  3. 如果您的某些单元格在运行时从未更改过,那么您可以在 IB 中创建每个单元格的1个实例。它们的行为类似于静态单元
  4. 对于自定义单元格(†),建议的做法是创建UITableViewCell的子类,并将该自定义类应用于相关的一个或多个单元格( IB >显示Identity Inspector),然后从列表中选择自定义类。这当然意味着你已经创建了这样的子类。
  5. 不要忘记为每个单元格原型分配唯一标识符,以便您可以使用dequeueReusableCellUsingIdentifier;
  6. 在运行时检索这些标识符

    通过此设置,您可以选择表格视图单元格, IB >在自定义类中显示助理编辑器和控件拖动引用。您可能需要告诉助理编辑器选择哪个文件。

    (†)还有很多其他方法可以做到这一点;所有这些都超出了本回应的范围。