从故事板修改自定义单元格

时间:2014-11-17 02:12:03

标签: ios uitableview swift storyboard

我有一个带有大量静态单元格的iOS应用程序(对于首选项视图),所以将所有内容放在故事板中是有意义的,但我希望能够根据它们是否能够为它们添加一个复选标记偏好设定与否。

我有我的委托方法设置

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {

}

我无法弄清楚如何抓住"来自界面构建器的单元格使用索引路径,以便我可以通过编程方式决定是否应添加复选标记。我有一种感觉,我可以调用某种超类/委托方法,但我不确定它是什么。感谢。

1 个答案:

答案 0 :(得分:1)

使用静态单元格时,需要将它们放在UITableViewController中,因为那里有魔法。在幕后,它为您实现了这些数据源方法。但你可以覆盖它们。重要的是你需要调用超级版本来让它完成它的工作。如果该方法返回一个值,则还需要返回该值。

所以在你的情况下:

override func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
    var cell = super.tableView(tableView, cellForRowAtIndexPath: indexPath)
    let isChecked = true // put your logic to determine whether the cell should be checked here
    cell.accessoryType = isChecked ? UITableViewCellAccessoryCheckmark : UITableViewCellAccessoryNone
    // ...
    return cell
}