responder a mi propia pregunta (me tomó unos días para depurar este, así que espero que esto ahorra a otra persona algún tiempo;)):
La causa raíz implica el uso de un UIColor modelado (a través de +[UIColor colorWithPatternImage:]
) como fondo color en una UIView que está encima de una UIImageView con la misma imagen.
Ejemplo:
UIImageView *imageView = [[UIImageView alloc] initWithImage:anImage];
[_containerView addSubview:imageView];
UIColor *patternColor = [UIColor colorWithPatternImage:anImage];
UIView *patternView = [[UIView alloc] initWithFrame:frame];
[patternView setBackgroundColor:patternColor];
[_containerView addSubview:patternView];
Ambos puntos de vista se basan negro, y no parece ser un problema de almacenamiento en caché en el que todos los otros usos de la imagen dibuja negro hasta que se suspende la aplicación/reanudó.
He archivado el problema # 10795514 con Apple para informar esto, pero parece que ha llegado a 5.1. Una reducción de este problema está disponible en: http://iccir.com/public/radar/Radar10795514.zip
La única solución que encontré fue aplanar la jerarquía de vistas y dibujar la imagen del patrón dos veces en la misma vista.
+1 - ¡Gracias por compartir! – Till
El problema real es colorWithPatternImage no se aplica a UIImageView en ios5, debería estar usando un UIView aparentemente .... – anders