Pregunta

Intento crear una lista de desplazamiento rápido utilizando el creador de Tweetie, technique (o esta técnica ). Creo que la idea es "hacer tu propio dibujo" en lugar de usar el uso de subvistas e imágenes en el UITableViewCell.

A continuación, extendí su ejemplo para incluir una imagen y no estoy seguro de si esta es la forma correcta de hacerlo.

He estado tratando de jugar un poco con CALayer y estoy luchando para 'conseguirlo'. Así que aquí en este ejemplo acabo de sacar una imagen. Pero no estoy seguro & # 8211; ¿Esto parece lo mismo que una imagen se muestra en una vista? A continuación, usaré UIGraphicsBeginImageContext para incluir más imágenes (por ejemplo, footerImage)

¿Lo que estoy haciendo en este ejemplo va a mejorar el rendimiento al crearlo todo en IB?

Gracias

- (void)drawContentView:(CGRect)r
{
    CGContextRef context = UIGraphicsGetCurrentContext();

    UIColor *backgroundColor = [UIColor whiteColor];
    UIColor *textColor = [UIColor blackColor];

    if(self.selected)
    {
        backgroundColor = [UIColor clearColor];
        textColor = [UIColor whiteColor];
    }

    [backgroundColor set];
    CGContextFillRect(context, r);

    // This is where I add the image to the example
    //
    CGRect profile = CGRectMake(0, 0, 320, 20);
    [headerImage drawInRect:profile];

    CGPoint p;
    p.x = 12;
    p.y = 9;

    [textColor set];
    CGSize s = [firstText drawAtPoint:p withFont:firstTextFont];

    p.x += s.width + 6; // space between words
    [lastText drawAtPoint:p withFont:lastTextFont];
}
¿Fue útil?

Solución

Sí, esta técnica mejorará el rendimiento en una célula IB recta. Pero si hace que todos los elementos de una celda sean opacos, el rendimiento del IB puede ser bastante decente; es posible que desee probar eso antes de seguir la ruta de una gran cantidad de código para crear las que son celdas simples.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top