Jak sprawić, by NSView nie przycinał swojego obszaru granicznego?
Stworzyłem pustą aplikację Cocoa na Xcode dla OS X i dodałem:
- (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];
}
Ale tło obróconej warstwy jest przycinane przez obszar graniczny widoku:
Pomyślałem, że od czasu jakiejś wersji OS X i iOS, widok nie będzie przycinać treści swoich podstron i pokaże wszystko wewnątrz i na zewnątrz? W systemie iOS widzę to zachowanie, ale zastanawiam się, dlaczego tak się pojawia i jak wszystko pokazać? (Już używam najnowszego kodu Xcode 4.4.1 na Mountain Lion).
(Uwaga: jeśli spróbujesz powyższego kodu, będziesz musiał połączyć się z Quartz Core i ewentualnie zaimportować kwarcowy nagłówek rdzenia, chociaż zastanawiam się, dlaczego nie zaimportowałem nagłówka i nadal się on doskonale kompiluje)