Creé una "TransformView
" subclasificación UIView
para admitir una vista de doble cara que estoy usando en una animación invertida. Esto ha sido sugerido en otras críticas, por ejemplo:Uso de la advertencia CATransformLayer: cambiar la propiedad opaque en la capa de solo transformación, no tendrá efecto
How to rotate a flat object around its center in perspective view?
@interface TransformView : UIView
@end
@implementation TransformView
+ (Class)layerClass {
return [CATransformLayer class];
}
@end
Todo funciona bien, pero me da un aviso cada vez que se crea un objeto TransformView usando:
TransformView *newTransformView=[[TransformView alloc] initWithFrame:frame];
La advertencia dice:
- cambio de propiedad opaque en capa de solo transformación, w enfermos no tienen efecto
supongo que la clase UIView
se está inicializando la propiedad opaca que es por lo general muy bien para un CALayer
pero no un CATransformLayer
.
¿El código de subclases es bastante dudoso? Si es así, ¿de qué otro modo puede crear una vista de dos lados para las animaciones de volteo?
¿Alguna idea de cómo detener la advertencia?
Tengo la sospecha de que la creación de un TransformView
desde un archivo de punta en lugar de initWithFrame
evita la advertencia, pero parece complicado tener que hacer esto solo para evitar la advertencia.
Archivado como [rdar: // 23069576] (https://openradar.appspot.com/23069576) –