我想将CALayer
的内容设置为图像。 CALayer
具有contents
属性该属性的文档说“图层可以将此属性设置为CGImageRef以将图像显示为其内容。”但属性需要id
所以在Xcode中我得到以下问题:
语义问题:指针不兼容 从中分配'id'的类型 'CGImageRef'(又名'struct CGImage *')
如果CGImageRef
属性只需contents
,我怎样才能将id
分配给{{1}}?我在这里缺少什么?
答案 0 :(得分:12)
您可以使用(__bridge id)来解决类型转换问题,而不是使用(id)。
答案 1 :(得分:5)
明确地将CGImageRef
投射到id
应修正警告。例如,
CGImageRef imageRef;
...
layer.contents = (id) imageRef;
应该可以正常工作。