In my tests, UIView and CALayer provide about the same level of performance on the iPhone. As rpetrich notes in his comment, UIViews are a thin shell around CALayers. On Mac, CALayers are much lighter than NSViews.
As Ben points out, you can go beyond the possibilities of implicit animation by working directly with CALayers, even providing some 3-D effects through CATransform3D. In many cases, you can do this even using standard views by accessing the support layer (if the view supports the layer).
Another issue is cross-platform (Mac / iPhone) code. My iPhone app uses the CALayer interface for its basic look, to a large extent, because I can use the same code to draw this interface on my colleague's Mac. As another example, I am directing you to Framework Core Plot , which makes full use of graphics using CALayers and works on both Mac and iPhone. CALayers are almost identical on both platforms, where UIView and NSView have very different interfaces.
Brad Larson Sep 19 '09 at 18:40 2009-09-19 18:40
source share