2010-02-16 36 views
5

Estoy tratando de crear una vista de cuadrícula utilizando un UITableView (mis preguntas más antiguas me han señalado en esta dirección) y actualmente estoy configurando las vistas para los elementos individuales. Después de haber creado una UITableViewCell personalizada que muestra 3 elementos por fila, he decidido incluir estos elementos en una subclase de UIView llamada ItemView.Color de fondo de UIView

Este ItemView luego se agregará como una subvista al UITableViewCell personalizado para mostrar la grilla. De todos modos, he logrado crear la vista y puedo hacer que muestre una multa UILabel, sin embargo, estoy teniendo problemas para cambiar ItemView para que sea transparente aparte de las UIViews (Etiquetas, botones, imágenes, etc.) dentro de ella. Aquí está mi código para UIView:

#import <UIKit/UIKit.h> 
@interface ItemView : UIView { 
} 
@end 

#import "ItemView.h" 
@implementation ItemView 

- (id)initWithFrame:(CGRect)frame { 
    if ((self = [super initWithFrame:frame])) { 
    } 
    return self; 
} 

- (void)drawRect:(CGRect)rect { 
    [self setBackgroundColor:[UIColor lightGrayColor]]; 
} 

- (void)dealloc { 
    [super dealloc]; 
} 
@end 

¿Dónde debo configurar el color de fondo para que funcione correctamente?

Saludos

+0

Hola Jack, ¿Puede por favor publicar aquí la solución? – Piyush

Respuesta

11

Probar:

self.backgroundColor = [UIColor clearColor]; 

no veo ninguna razón para no tener que en su método init. No creo que quieras anular drawRect: en este caso, ya que necesitarás dibujar la vista por tu cuenta.

+1

Había intentado esto, sin embargo, después de haber revisado el resto de mi código, encontré un montón de cosas que lo estaban estropeando. Finalmente lo conseguí trabajando. Gracias por la respuesta. – Jack