tablas example ejemplo iphone objective-c cocoa-touch uitableview

iphone - example - uitableview swift 4



¿Cómo hacer que una celda en un UITableView no se pueda seleccionar? (11)

Actualización en Swift 3:

cell.selectionStyle = UITableViewCellSelectionStyle.none

Tengo una celda que estoy insertando en la parte superior de una UITableView. ¿Cómo puedo asegurarme de que cuando el usuario hace clic en la celda, no muestra el indicador azul seleccionado?


Desde Storyboard, establezca lo siguiente para Table View:

Selección : Sin selección

Mostrar selección al tacto : Falso


Estoy respondiendo desde el punto de vista de desactivar TableViewCell. Puedes usar el guión gráfico.

XCode Version 8.2.1 (8C1002)

Seleccione TableVewCell en el guión gráfico y los siguientes serán visibles en el panel lateral derecho - Utilidades.

Haga la selección: ninguna

¡Eso es todo!


Implementar este method de UITableViewDelegate

- (BOOL)tableView:(UITableView *)tableView shouldHighlightRowAtIndexPath:(NSIndexPath *)indexPath { return NO; }


Para Swift 3:

cell.selectionStyle = .none


Para que sea completamente no seleccionable, se requieren dos cosas:

1- Como otros dijeron:

cell.selectionStyle = UITableViewCellSelectionStyleNone;

2- Necesitas implementar este método delegado:

// 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; }


para Swift 3 puedes usar

cell.isUserInteractionEnabled = false


tu puedes hacer

cell.selectionStyle = UITableViewCellSelectionStyleNone;


Sintaxis Swift:

cell.selectionStyle = UITableViewCellSelectionStyle.None



myTable.allowsSelection = false