English 中文(简体)
NSViewController. Core Animation sublayer not drawing
原标题:

I create NSViewController. It manage my view hierarchy and set other views in one NSBox.

- (void)displayViewController:(ManagingViewController *)vc
{
NSWindow *w = [box window];
NSView *v = [vc view];
[box setContentView:v];
}

I have two alternate views. The views have Quartz Composer root layer and CALayer sublayer.

 // ----------
 // Root Layer
 // ----------
 QCCompositionLayer* rootLayer = [QCCompositionLayer compositionLayerWithFile:[[NSBundle mainBundle]
                  pathForResource:@"BackgroundHome" 
                  ofType:@"qtz"]];
[self setLayer:rootLayer];
[self setWantsLayer:YES];


 // ----------
 // Menu Layer
 // ----------
 menusLayer = [CALayer layer];
 menusLayer.frame = rootLayer.bounds;
 menusLayer.layoutManager =[CAConstraintLayoutManager layoutManager];

 [rootLayer addSublayer:menusLayer];


 // --------------
 // Menu Items
 // --------------
 NSInteger i;
 for (i=0;i<[section count];i++) {
 NSString *name = [section objectAtIndex:i];

 CATextLayer *menuItemLayer = [CATextLayer layer];

 menuItemLayer.string = name;
 menuItemLayer.font = @"Lucida-Grande";
 menuItemLayer.fontSize = fontSize;
 menuItemLayer.foregroundColor = CGColorCreateGenericRGB(1.0,1.0,1.0,1.0);

 [menuItemLayer addConstraint:[CAConstraint
       constraintWithAttribute:kCAConstraintMaxY
       relativeTo:@"superlayer"
       attribute:kCAConstraintMaxY
       offset:-(i*height+spacing+initialOffset)]];
 [menuItemLayer addConstraint:[CAConstraint constraintWithAttribute:kCAConstraintMidX
            relativeTo:@"superlayer"
             attribute:kCAConstraintMidX]];

 [menusLayer addSublayer:menuItemLayer];
 }
 [menusLayer layoutIfNeeded];

I run my application, I can alternate views but I only look the QCCompositionLayer. When I use my custom NSView class directly, without NSView hierarchy, I can look all. Where s the error?

Excuse my bad english and thanks

问题回答

暂无回答




相关问题
Taking picture with QTCaptureView

Is it possible to simply take a picture and save it somewhere using a QTCaptureView and Apple s built-in iSight? I ve seen lots of tutorials on recording video but none on simply taking a picture. Any ...

Controlling OSX windows

I m trying to control windows of a foreign OSX applications from my application. I d like to 1. move the windows on the screen 2. resize the windows on the screen 3. change the currently active window ...

objective-c: Calling a void function from another controller

i have a void, like -(void) doSomething in a specific controller. i can call it in this controller via [self doSomething], but i don t know how to call this void from another .m file. I want to call ...

NSUndoManager and runModalForWindow:

I have a simple Core Data app which displays a list of entities in the main window. To create or add new entities, I use a second modal window with a separate managed object context so changes can be ...

NSMutableArray values becoming "invalid"

I m trying to show a database information in a tableview and then the detailed information in a view my problem is as follow: I created a NSMutableArray: NSMutableArray *myArray = [[NSMutableArray ...

How to get a flash url in a webpage using a webframe?

As we know , When we load frame from webpage of safari, we will invoke the delegate methods of webkit informal protocol(WebFrameLoadDelegate): webView:didStartProvisionalLoadForFrame: webView:...

热门标签