¿Cuál es la forma más robusta de forzar una UIView para volver a dibujar?

Tengo un UITableView con una lista de elementos. La selección de un elemento empuja un viewController que luego hace lo siguiente. desde el método viewDidLoad, lanzo un URLRequest para los datos requeridos por uno de mis subvistas, una subclase UIView con drawRect invalidado. Cuando los datos llegan de la nube, comienzo a construir mi jerarquía de vistas. la subclase en cuestión recibe los datos y su método drawRect ahora tiene todo lo que necesita para renderizar.

Pero.

Debido a que no llamo explícitamente a drawRect, Cocoa-Touch se encarga de eso, no tengo forma de informar a Cocoa-Touch que realmente quiero que se genere esta subclase UIView. ¿Cuando? ¡Ahora sería bueno!

He intentado [myView setNeedsDisplay]. Esto funciona un poco a veces. Muy irregular.

He estado luchando con esto por horas y horas. ¿Podría alguien que, por favor, me brinde un enfoque sólido y garantizado para forzar una nueva representación de UIView?

Aquí está el fragmento de código que alimenta los datos a la vista:

// Create the subview
self.chromosomeBlockView = [[[ChromosomeBlockView alloc] initWithFrame:frame] autorelease];

// Set some properties
self.chromosomeBlockView.sequenceString     = self.sequenceString;
self.chromosomeBlockView.nucleotideBases    = self.nucleotideLettersDictionary;

// Insert the view in the view hierarchy
[self.containerView          addSubview:self.chromosomeBlockView];
[self.containerView bringSubviewToFront:self.chromosomeBlockView];

// A vain attempt to convince Cocoa-Touch that this view is worthy of being displayed ;-)
[self.chromosomeBlockView setNeedsDisplay];

Saludos, Doug

Respuestas a la pregunta(5)

Su respuesta a la pregunta