¿Cómo hacer que NSView no recorte su área de delimitación?
Creé una aplicación de Cocoa vacía en Xcode para OS X, y añadí:
- (void)applicationDidFinishLaunching:(NSNotification *)aNotification {
self.view = [[NSView alloc] initWithFrame:NSMakeRect(100, 100, 200, 200)];
self.view.wantsLayer = YES;
self.view.layer = [CALayer layer];
self.view.layer.backgroundColor = [[NSColor yellowColor] CGColor];
self.view.layer.anchorPoint = CGPointMake(0.5, 0.5);
self.view.layer.transform = CATransform3DMakeRotation(30 * M_PI / 180, 1, 1, 1);
[self.window.contentView addSubview:self.view];
}
Pero el fondo de la capa girada está recortado por el área delimitada de la vista:
Pensé que ya que en algunas versiones de OS X y iOS, la vista no recortará el contenido de sus subvistas y mostrará todo dentro y fuera. En iOS, veo ese comportamiento, pero me pregunto por qué aparece así y cómo hacer que todo se vea. (Ya estoy usando el Xcode 4.4.1 más reciente en Mountain Lion).
(nota: si prueba el código anterior, deberá vincularlo con Quartz Core y posiblemente importar el encabezado de núcleo de cuarzo, aunque me pregunto por qué no importé el encabezado y aún se compila perfectamente)