objective-c uitableview ios7 rounded-corners

objective c - Esquinas redondeadas en un UITableView(iOS7)



objective-c rounded-corners (4)

En iOS7, ¿cómo puedo dibujar las esquinas redondeadas de las celdas en un UITableView? Vea un ejemplo:


Subcomité UITableViewCell y tuve que omitir contentView para que funcionara.

cell.layer.cornerRadius = 10 cell.layer.maskToBounds = true


Usar abajo ...

[cell.contentView.layer setCornerRadius:7.0f]; [cell.contentView.layer setMasksToBounds:YES];


intente delegado de vista de tabla

- (void)tableView:(UITableView *)tableView willDisplayCell:(UITableViewCell *)cell forRowAtIndexPath:(NSIndexPath *)indexPath { cell.layer.cornerRadius = 10; cell.layer.masksToBounds = YES; }

Nota / recomendación : Utilice mejor el archivo XIB / NIB de celda, agregue una vista UIV con el margen superior, inferior, izquierdo y derecho de las esquinas a través de las restricciones, mantenga el fondo de la celda transparente y las esquinas de la vista UIV redondas. Mi solución fue buena en esa situación. Pero siempre vaya por las mejores prácticas.


Su vista de UITableview contiene UIView , así que solo use esta línea de código debajo para hacer esquinas redondeadas. También escriba esto debajo de la línea de código dentro de sus métodos tableview

// Si la versión de iOS <10

Para Objective-c: -

cell.contentView.layer.cornerRadius = 5; cell.contentView.layer.masksToBounds = YES;

Para Swift: -

cell.contentView.layer.cornerRadius = 5 cell.contentView.layer.masksToBounds = true

// Si la versión de iOS> = 10

Para Objective-c: -

cell.layer.cornerRadius = 5; cell.layer.masksToBounds = YES;

Para Swift: -

cell.layer.cornerRadius = 5 cell.layer.masksToBounds = true

Nota: - No es necesario importar explícitamente el QuartzCore framework .