我想声明我的表中原型单元格中的4个标签,以便我可以将所有数据从Parse检索到标签中。如图所示,有4个标签,我希望每个标签都有自己的插座,但它显示出无效的插座错误。
我使用Parse来做,因此原型单元格的超类将是PFTableViewCell。
class TimetableViewController: PFQueryTableViewController, UITextFieldDelegate{
@IBOutlet weak var lblTime: UILabel!
我得到的错误就是这样......
从TimetableViewController到UILabel的lblTime出口是 无效。奥特莱斯无法连接到重复内容。
因此,我该怎么做才能避免这个问题?
答案 0 :(得分:4)
您需要创建UITableViewCell
的自定义子类,并在那里声明您的IBOutlets
。然后在整个主视图控制器中使用该子类而不是通用UITableViewCell
。
重申:tableview单元格内的元素属于单元格,而不属于包含所有内容的视图控制器。
编辑: 在您的视图控制器中,您将符合UITableView的委托&数据源协议(并实现与您要完成的任务相关的任何方法)。您将在以下数据源方法中处理填充(初始)单元格数据:
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("cellIdentifier", forIndexPath: indexPath) as! TimetableViewCell
// TODO: setup cell data here
return cell
}
答案 1 :(得分:1)
即时生成单元格。控制器和单元之间没有真正的连接,因此您无法将单元中的某些东西连接到控制器。具体来说,通常您有多个相同类型的单元格("重复内容")并且您不能将所有标签连接到父控制器中的一个插座。
通常,您要做的是为单元格声明一个类,例如
{{1}}
并添加插座。
答案 2 :(得分:0)