如何在 CALayer 中将 PNG 作为不透明图像加载?

How to load a PNG as an opaque image within a CALayer?

我需要在我的应用程序中的 CALayer 中本地加载各种 PNG 图像。为此,我的代码如下所示:

 CALayer *myLayer  = [[CALayer alloc] init];
 UIImage *myImage = [UIImage imageNamed:@"nonTransparentBackground"];
 [myLayer setOpaque:YES];
 [myLayer setContents:(__bridge id)[myImage CGImage]];

2015 年 4 月 15 日更新:我创建了一个测试应用程序,它除了在后台加载 PNG 文件外什么都不做,而且它可以正常工作,这是个好消息。我的应用程序中一定有什么东西导致了这种行为。希望识别时间不会太长。

我在这里发帖以防将来有人遇到问题,但我对此表示怀疑。事实证明问题与我的实际代码无关,而是与部署目标有关。我当前的目标是 7.1,但通过更改为 8.0,它可以按预期工作。我不知道这是 Xcode/Simulator 相关还是 iOS 相关,所以我可能会坚持使用 iOS 7 直到下一次更新。