Nota - se è necessario aggiungere una vera linea un pixel, non ingannare con un'immagine, utilizzare questo:
@interface UILine : UIView
@end
@implementation UILine
-(void)awakeFromNib
{
float sortaPixel = 1.0/[UIScreen mainScreen].scale;
// float sortaPixel = 1.0/self.contentScaleFactor;
// -- recall, that does NOT work when loading from storyboard!
UIView *line = [[UIView alloc] initWithFrame:
CGRectMake(0, 0, self.frame.size.width, sortaPixel)];
line.userInteractionEnabled = NO;
line.backgroundColor = self.backgroundColor;
line.autoresizingMask = UIViewAutoresizingFlexibleWidth;
[self addSubview:line];
self.backgroundColor = [UIColor clearColor];
self.userInteractionEnabled = NO;
}
@end
Come utilizzare in storyboard, basta fare un UIView che è nel posto esatto, e la larghezza esatta, tu vuoi. (Naturalmente, allungalo alla larghezza, o qualsiasi altra cosa sia necessaria.)
Basta fare la vista - diciamo - 5 pr ad alta 6 pixel - puramente per poterla vedere correttamente. (Non importa quanto in alto si rendono nello storyboard.)
(fare la parte superiore del UIView esattamente dove si desidera che la linea di single-pixel.)
Rendere l'UIView qualsiasi colore desiderato, probabilmente nero.
Modificare la classe su UILine. In fase di esecuzione disegnerà una perfetta linea a pixel singolo nella posizione esatta su tutti i dispositivi.
Spero che questo aiuti in questo modo.
Puoi mostrarci una foto del problema? –
@MarcusAdams fatto. –
Hai davvero bisogno di fare un layout personalizzato per le tue cellule? La tua prima cella appare come una cella standard con stile 'UITableViewCellStyleValue1' – Clafou