Solución:
Para eliminar la capacidad de seleccionar cualquier celda de la tabla, o celdas de tabla particulares basadas en el índice de fila, use willSelectRowAt
func tableView(_ tableView: UITableView, willSelectRowAt indexPath: IndexPath) -> IndexPath? {
return nil
}
Para eliminar simplemente el efecto de la interfaz de usuario de seleccionar el elemento, establezca el estilo de selección de UITableViewCell en UITableViewCellSelectionStyleNone
Rápido 5:
selectionStyle = .none
Para que una celda sea completamente no seleccionable por celda, se requieren dos cosas:
1- Como dijeron otros:
cell.selectionStyle = UITableViewCellSelectionStyleNone;
2- Implemente este método de delegado de la siguiente manera:
// Called before the user changes the selection. Return a new indexPath, or nil, to change the proposed selection.
- (NSIndexPath *)tableView:(UITableView *)tableView willSelectRowAtIndexPath:(NSIndexPath *)indexPath{
UITableViewCell* cell = [tableView cellForRowAtIndexPath:indexPath];
if(cell.selectionStyle == UITableViewCellSelectionStyleNone){
return nil;
}
return indexPath;
}
Desde el Storyboard, configure lo siguiente para la Vista de tabla:
Selección: Sin selección
Mostrar selección al tocar: Falso
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)