2011-01-14 14 views
5

Estoy usando iOS SDK 4.2. Tengo un UIPopoverController inicializado con un controlador de navegación que se inicializa con un controlador de vista. Una de las subvistas del controlador de vista es una vista de tabla agrupada. Me gustaría cambiar el color de fondo de la vista de tabla. Sin embargo, si lo hago en el método viewDidLoad del controlador de vista¿Cómo configuro el color de fondo de una UITableView dentro de un UIPopoverController?

self.myTableView.backgroundColor = [UIColor blackColor]; 

el fondo no cambia, cuando aparezca la popover, el fondo de la vista de tabla es de color gris. ¿Cualquier pista? ¿Qué pasa con este enfoque? Gracias de antemano.

Respuesta

9

Las vistas de tabla agrupadas tienen una vista personalizada en la propiedad backgroundView. Esta vista personalizada es lo que muestra el fondo. Si desea cambiar el fondo, debe crear su propia vista y asignarla allí. En su caso, probablemente desee algo como lo siguiente:

UIView *bgView = [[[UIView alloc] init] autorelease]; 
bgView.backgroundColor = [UIColor blackColor]; 
bgView.opaque = YES; 
self.myTableView.backgroundView = bgView; 
+5

Kevin, su sugerencia funciona perfectamente. También me han dicho y verificado que, simplemente borrando la vista de fondo de la vista de tabla antes de establecer el color de fondo de la vista de tabla, proporciona el mismo resultado: self.myTableView.backgroundView = nil; self.myTableView.backgroundColor = [UIColor blackColor]; –

Cuestiones relacionadas