Ios 为什么我的转换是串联的,而不是被替换的?
好吧,这很奇怪Ios 为什么我的转换是串联的,而不是被替换的?,ios,swift,Ios,Swift,好吧,这很奇怪 func closePageCell(cell : BookPageCell) { var transform = CATransform3DIdentity if cell.layer.anchorPoint.x == 0 { transform = CATransform3DRotate(transform, CGFloat(0), 0, 1, 0) transform = CATransform3DTranslate(tr
func closePageCell(cell : BookPageCell) {
var transform = CATransform3DIdentity
if cell.layer.anchorPoint.x == 0 {
transform = CATransform3DRotate(transform, CGFloat(0), 0, 1, 0)
transform = CATransform3DTranslate(transform, -0.7 * cell.layer.bounds.width / 2, 0, 0)
transform = CATransform3DScale(transform, 0.7, 0.7, 1)
}
else {
transform = CATransform3DRotate(transform, CGFloat(-M_PI), 0, 1, 0)
transform = CATransform3DTranslate(transform, 0.7 * cell.layer.bounds.width / 2, 0, 0)
transform = CATransform3DScale(transform, 0.7, 0.7, 1)
}
cell.layer.transform = transform
}
转换在这里连接,但语法为“=”
当然“=”会替换转换。这怎么行 CATTransformorM3DXXX将变换作为一个参数输入,然后将其返回。因此,每次调用该方法时,它都在构建转换,有效地将它们连接在一起
如果将参数中的
转换
替换为CATTransformM3DidEntity
,则会出现您预期的行为CATTransformM3DXXX将转换作为参数输入,并将其返回。因此,每次调用该方法时,它都在构建转换,有效地将它们连接在一起
如果将参数中的transform
替换为CATTransferorM3DidEntity
,则会出现预期的行为