OSX 10.9之前的canDrawSubviewsIntoLayer的替代方法

时间:2014-07-19 01:22:02

标签: objective-c cocoa calayer nsimage nsimageview

我需要在图片视图中实现以下代码,以使gif正确生成动画:

self.homeView.radarImageView.animates = YES;
self.homeView.radarImageView.canDrawSubviewsIntoLayer = YES;
self.homeView.radarImageView.image = currentData.radarImage;

不幸的是,canDrawSubviewsIntoLayer方法与10.9之前的OSX不兼容。是否有一种替代方法可以使其在OSX 10.7及更高版本中运行?

1 个答案:

答案 0 :(得分:0)

避免使用10.8及以下的基于图层的视图,因为它们似乎与GIF动画混合不好

请参阅: How to display animated GIF in Objective C on top of the layered View?

编辑:

如评论中所述,可以绘制渐变(以及所有其他效果而不使用图层) 例如,对于Gradients,NSGradient采用NSColors并且可以填充矩形

无耻插头:

一个可以在背景中绘制所有想要的NSView:颜色,渐变,图案图像,只是图像,边框,圆角...所有在一个视图中 https://github.com/Daij-Djan/DDBackgroundView