¿Cómo deshabilitar resaltado UITableViewCell?

Tengo un background de vista gris oscuro con una vista de tabla transparente. Estoy usando el siguiente código para tratar de detener la celda resaltada cuando se hace clic en una celda. Funciona excepto en el momento en que la celda se hace clic inicialmente, veo un punto culminante. Luego paso a otra escena después de eso. Cuando vuelvo, la celda no está resaltada.

func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) { var selectedCell:UITableViewCell = tableView.cellForRowAtIndexPath(indexPath)! selectedCell.contentView.backgroundColor = UIColor.clearColor() tableView.deselectRowAtIndexPath(indexPath, animated: true) } 

¿Cómo inhabilito el resaltado de celda inicial que aún está en curso?

Establezca el estilo de selección UITableViewCell ninguno

 cell.selectionStyle = .None 

UITableViewDelegate tiene methods para hacer frente a aspectos destacados de la celda, probablemente tableView(_:shouldHighlightRowAt:) es lo que está buscando

Verifique la documentation para los otros methods.

La forma más sencilla de evitar resaltar es establecer selectionStyle en None . Así es como puedes lograr esto:

 func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell { var cell:UITableViewCell = self.tableView.dequeueReusableCellWithIdentifier("cell") as UITableViewCell cell.selectionStyle = .None return cell } 

Descubrí que las otras respuestas no funcionaban para mí ya que requerían un doble clic para seleccionar. Esto funcionó.

 func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) { tableView.deselectRow(at: indexPath, animated: true)