Ios UIInterfaceOrientation,CGAffineTransform,Frame,Bounds and Center

Ios UIInterfaceOrientation,CGAffineTransform,Frame,Bounds and Center,ios,uiview,uikit,core-graphics,Ios,Uiview,Uikit,Core Graphics,有人能给我指一本关于上述内容的好入门书吗?当你和其他人乱搞时,其中一本会发生什么?似乎无论我做什么,一旦我开始搞乱状态栏方向或视图变换(即使我所做的只是90度旋转),我就可以指望我的视图以横向、倒置和向后的方式结束,在一个令人沮丧的尝试和错误的下午,试图将其理顺。我相信,一旦你知道了逻辑和应用的顺序,这一切都是有意义的,但到目前为止,根据经验,我还没有弄清楚。我不知道有哪本好的关于这个主题的单一文档入门书,但以下是我从经验和阅读文档中学到的 中心、边界和框架 如果设置框架,则将更新中心和边界。若

有人能给我指一本关于上述内容的好入门书吗?当你和其他人乱搞时,其中一本会发生什么?似乎无论我做什么,一旦我开始搞乱状态栏方向或视图变换(即使我所做的只是90度旋转),我就可以指望我的视图以横向、倒置和向后的方式结束,在一个令人沮丧的尝试和错误的下午,试图将其理顺。我相信,一旦你知道了逻辑和应用的顺序,这一切都是有意义的,但到目前为止,根据经验,我还没有弄清楚。

我不知道有哪本好的关于这个主题的单一文档入门书,但以下是我从经验和阅读文档中学到的

中心、边界和框架

如果设置框架,则将更新中心和边界。若您设置了中心或边界,那个么框架将被更新。框架是使用superview的坐标系操纵中心和边界的一种方便方法

发件人:

视图的几何图形由其边框、边界和中心特性定义。框架在其superview的坐标系中定义视图的原点和尺寸,通常在布局期间用于调整视图的大小或位置。“中心”特性可用于调整视图的位置,而无需更改其大小。边界定义了视图的内部尺寸,几乎只在自定义图形代码中使用。框架矩形和边界矩形的大小部分耦合在一起,因此更改任一矩形的大小都会更新两者的大小

有关更多详细信息,请参阅

变换


如果将“变换”属性设置为除标识变换之外的其他内容,则框架未定义。如果将变换设置为其他对象,则应仅使用“中心”(将视图放置在其superview中)和“边界”(调整视图大小)操纵视图几何图形。以下是来自以下方面的相关信息:

变换的原点是“中心”特性的值,或者图层的“锚点”特性(如果已更改)的值。(使用“层”特性获取底层核心动画层对象。)默认值为CGAffineTransformIdentity

警告如果变换属性不是标识变换,则此属性的值未定义,因此应忽略

有关更多详细信息,请参阅

UIInterfaceOrientation

UIInterfaceOrientation不会直接影响变换、边界、中心或帧属性。但是,当设备方向更改时,视图控制器将自动调整其子视图的大小(这将反过来调整其子视图的大小,依此类推)


有关更多详细信息,请参阅和。

我做了,但很抱歉,这没有多大帮助。我已经阅读了UIView类参考,并且我已经知道了所有单词的含义。WWDC 2011上的“UIView绘图”课程涵盖了这个主题,这可能会有所帮助。“如果将变换设置为其他内容,则应仅使用中心和边界操纵视图几何体”是我在这方面听到的最好建议。谢谢