uitableviewcell example custom creating ios uitableview custom-controls

ios - example - uitableview custom cell swift 4



Cambiar el color del área insertada en el separador UITableView (6)

Tengo un UITableView personalizado, las celdas tienen un color de fondo diferente (establecido en una vista de fondo personalizada). Sin embargo, el color de fondo solo se aplica dentro de la celda, pero no se extiende al área insertada del separador. Como puede ver en la captura de pantalla, hay un área blanca a la izquierda del separador de color.

¿Cómo podemos cambiar el color de esta línea blanca? Nos gustaría hacer que la línea "desaparezca" configurándola del mismo color que el fondo de la celda. ¡Gracias!


Así que solo tuve este problema yo mismo, y es extraño porque parece funcionar bien en algunas vistas de tabla. Supongo que el color gris que está usando es el color de fondo de su tabla vista. Si no, esta solución puede no funcionar.

Parece que las celdas en iOS 7 no siempre recogen el color de fondo de la tabla cuando hay una inserción de separador, por lo que debe establecer manualmente el fondo de la celda en clearColor. Curiosamente, establecer este valor en los guiones gráficos no funcionó para mí, tuve que hacerlo en código. Agrega esto:

cell.backgroundColor = [UIColor clearColor];

cuando configura la celda en esta función de delegado:

- (UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath


En Interface Builder en UITableViewCell, establezca el atributo ''background'' para que sea claro (o lo que sea) y luego, en Content View, configure el atributo ''background'' para que también sea claro y el problema desaparezca.


Es el valor predeterminado en iOS 7. Pero puede cambiarlo a la forma en que se ve iOS 6. Por favor prueba mi código a continuación. Te sorprenderás

tableView.separatorColor = [UIColor colorWithRed:red green:green blue:blue alpha:1.0]; NSString *iosversion = [[UIDevice currentDevice] systemVersion]; int version = [iosversion intValue]; if(version>6) { tableView.separatorInset = UIEdgeInsetsZero; }

Swift 3+:

tableView.separatorInset = UIEdgeInsets.zero


Establecer el color de fondo de la celda al mismo que el color de fondo de contentView parece dar los mejores resultados.

cell.backgroundColor = cell.contentView.backgroundColor;

Eso manejará los casos en que el accesorioView es el color incorrecto también.


Use la imagen para el separador. Esta es la única forma fácil de acechivar tu resultado esperado. Para ios 7 en xib tenemos propiedades de insectos de borde que puedes usar.


Vaya al guión gráfico> Inspector de atributos> Intercambios de separador, luego seleccione cutom y cambie la coordenada izquierda de 15 a 0. se terminará.