CATextLayer旋转?
这应该真的有效,但不是:
CATextLayer* textLayer = [CATextLayer layer]; textLayer.string = @"text"; [textLayer setValue:[NSNumber numberWithDouble:M_PI / 2.f forKey:@"transform.rotation"]; [self addSublayer:textLayer];
事实上,当我在transform.rotation上打印值时,它会显示正确的答案。 它只是没有绘制textLayer旋转!
NSLog(@"rotation %@", [textLayer valueForKey:@"transform.rotation"]);
我究竟做错了什么?
请尝试以下代码:
textLayer.transform = CATransform3DMakeAffineTransform(CGAffineTransformMakeRotation(M_PI_2));
代替:
[textLayer setValue:[NSNumber numberWithDouble:M_PI / 2.f forKey:@"transform.rotation"];
CALayer会记住你给它的任何价值。 我相信你错了,因为你需要用“transform.rotation.z”旋转。