Iphone CALayer性能与UIImageView性能

Iphone CALayer性能与UIImageView性能,iphone,uikit,uiimageview,calayer,Iphone,Uikit,Uiimageview,Calayer,我注意到我在应用程序中对图像所做的一些事情,我可以用CALayer属性(即边框、阴影、渐变等)来代替。所以我想知道,总的来说,使用CALayers之类的工具是更好的主意,还是在photoshop中使用UIImage(View)来满足我的需要?滚动性能一直有点慢的阴影和东西,所以我基本上是试图找到每一个小优化,我可以 背景信息:我基本上只是在一堆图像上垂直滚动。有点像照片应用程序。这都是从3.2版开始的,所以我可以访问阴影之类的内容,并且应该在CALayer中光栅化属性。了解CALayer阴影的一

我注意到我在应用程序中对图像所做的一些事情,我可以用CALayer属性(即边框、阴影、渐变等)来代替。所以我想知道,总的来说,使用CALayers之类的工具是更好的主意,还是在photoshop中使用UIImage(View)来满足我的需要?滚动性能一直有点慢的阴影和东西,所以我基本上是试图找到每一个小优化,我可以


背景信息:我基本上只是在一堆图像上垂直滚动。有点像照片应用程序。这都是从3.2版开始的,所以我可以访问阴影之类的内容,并且应该在CALayer中光栅化属性。

了解CALayer阴影的一个关键点是,默认情况下,它们是从层的合成alpha通道渲染的;这可能会非常缓慢,尤其是当层旋转或改变大小时。你应该查看
阴影路径
属性:如果你给核心动画一个简单的形状,比如一个矩形(
UIBezierPath
+bezierPathWithRect:
和层的
边界
将[通过它的
CGPath
属性]给你一个
CGPathRef
,你可以在那里使用),你会看到更好的表现

shouldRasterize
也非常有用,尤其是对于包含许多不经常更改的子视图的视图;不过,请确保将图层的
光栅化比例设置为
[UIScreen mainScreen].scale
,否则在iPhone 4这样的高分辨率屏幕上会出现一些令人讨厌的像素化