Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/109.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios 什么';view和view.layer之间的关系是什么?_Ios_Core Animation - Fatal编程技术网

Ios 什么';view和view.layer之间的关系是什么?

Ios 什么';view和view.layer之间的关系是什么?,ios,core-animation,Ios,Core Animation,view和view.layer之间的关系是什么。例如,view.layer具有特性位置。并且视图有属性中心。如果我更改图层的位置,视图是否会更改“中心”属性?如果我更改view.layer的边界,视图是否也会更改其边界属性?一个层表示一个图形上下文,它可能共享多个剪裁区域,但出于性能原因,也可能聚合图形操作,有时,这会受到重叠视图或具有冲突alpha(透明度)值的动画效果的约束 一般来说,您不会手动操作层,但是您可以在API调用中引用它们,以便底层框架可以尝试为您排序所有这些。否则,在iOS中的

view和view.layer之间的关系是什么。例如,view.layer具有特性位置。并且视图有属性中心。如果我更改图层的位置,视图是否会更改“中心”属性?如果我更改view.layer的边界,视图是否也会更改其边界属性?

一个层表示一个图形上下文,它可能共享多个剪裁区域,但出于性能原因,也可能聚合图形操作,有时,这会受到重叠视图或具有冲突alpha(透明度)值的动画效果的约束

一般来说,您不会手动操作层,但是您可以在API调用中引用它们,以便底层框架可以尝试为您排序所有这些。否则,在iOS中的动画性能会非常糟糕


除非您正在进行非常低级的图形编码,否则我不知道您为什么要直接操作层边界。

视图由层支持。正如stackmonster所说,层描述了系统用于向屏幕呈现矩形内容区域的低级绘图上下文

stackmonster说的关于不直接操纵层和动画性能差的其他事情完全是错误的。核心动画基于层。对于许多简单的动画,您可以使用UIView动画,但是有许多类的动画和其他东西需要您直接创建和使用层。所有CAAnimation对象都作用于层,并且有许多非常酷的技巧只有通过直接操纵层才能实现。我一直使用层来绘制和制作动画


图层和视图使用略有不同的特性来控制其在屏幕上的位置。正如您所说,视图具有“中心”特性,而图层具有“位置”特性。它们是相似的

请记住,由于objective C实际上不支持私有方法,因此API将显示真正只用于子类化的公共方法。