在我的UITableView中,如何在选择时将“选定的单元格颜色”重置为默认值?

时间:2015-07-22 19:48:25

标签: ios swift uitableview

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    checkRequirements() { () -> Void in
        var room = self.rooms[indexPath.row]
        self.roomForPreview = room
        self.indexPathForPreview = indexPath
        self.performSegueWithIdentifier(CONSTANTS.SegueLobbyToRoomPreview, sender: self.view)
    }
}

当用户选择一个单元格时,我执行一个segue,但当我放松时,我发现该单元格仍然有灰色背景。

如何仅在触摸时使细胞变灰?一旦触摸消失,细胞就会恢复正常颜色。

1 个答案:

答案 0 :(得分:5)

使用deselectRowAtIndexPath

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
    tableView.deselectRowAtIndexPath(indexPath, animated: true)
    ...

如果您使用的是UITableViewController,则可以将clearsSelectionOnViewWillAppear属性设置为true - 这也可以。