iOS 中的 UIView 以及 CALayer 的定位机制

2014-11-11 15:20:19 +08:00
 winiex
UIView 以及 CALayer 都有一套自己的定位机制,当你要自己绘制自定义控件的时候是非常重要的。UIView 有 frame、bounds、center,CALayer 有 frame、bounds、anchorPoint、position,这些属性又各有用处,相互之间也有关联。

我看了介绍 UIView 和 Core Animation 的相关官方文档[1][2]和博客文章[3]后对这些概念有一个大体的认识(依然比较模糊),但是对于它们相互之间的影响关系以及更深层次的应用有些不解。

特别是,CALayer 的相关属性和 UIView 的相关属性之间的联系是怎样的?UIView 作为自己的 CALayer 的 delegate,是怎么去代理自己的 CALayer 对象的?

麻烦前辈们根据自己的经验指教一下啊,多谢 :)。

[1] https://developer.apple.com/library/ios/documentation/WindowsViews/Conceptual/ViewPG_iPhoneOS/Introduction/Introduction.html
[2] https://developer.apple.com/library/mac/documentation/Cocoa/Conceptual/CoreAnimation_guide/Introduction/Introduction.html
[3] http://wonderffee.github.io/blog/2013/10/13/understand-anchorpoint-and-position/
2987 次点击
所在节点    iDev
2 条回复
walkingway
2014-11-16 22:56:16 +08:00
winiex
2015-01-13 12:52:22 +08:00
研究了一段时间,自己写了篇总结,希望对大家有帮助 :)

http://bachiscoding.com/blog/2014/11/11/relationship-between-anchor-point-and-position-property-of-calayer/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/145639

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX