这个CALayer设置代码有什么问题

时间:2012-04-06 15:22:49

标签: ios calayer

pg上的View Programming Guide for iOS。 57有这段代码:

// Create the layer.
CALayer* myLayer = [[CALayer alloc] init];
// Set the contents of the layer to a fixed image. And set
// the size of the layer to match the image size.
UIImage layerContents = [[UIImage imageNamed:@"myImage"] retain];
CGSize imageSize = layerContents.size;
myLayer.bounds = CGRectMake(0, 0, imageSize.width, imageSize.height);
myLayer = layerContents.CGImage;

为什么要在最后一行执行此操作:myLayer = layerContents.CGImage;。首先,对象不匹配,因此这是一个类型问题。但它正在替换第一个语句中创建的对象!

我错过了什么?

1 个答案:

答案 0 :(得分:2)

看起来该文档有误。应该是:

myLayer.contents = (id)layerContents.CGImage;

这是设置图层内容的一种方法。请参阅docs for contents