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
.