Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

CATextLayer rotate?

This should really work, but is not:

CATextLayer* textLayer = [CATextLayer layer];
textLayer.string = @"text";
[textLayer setValue:[NSNumber numberWithDouble:M_PI / 2.f forKey:@"transform.rotation"];
[self addSublayer:textLayer];

in fact, when i print the value at transform.rotation, it shows the correct answer. it just doesn't draw the textLayer rotated!

NSLog(@"rotation %@", [textLayer valueForKey:@"transform.rotation"]);

What am I doing wrong?

like image 844
olynoise Avatar asked Aug 08 '26 09:08

olynoise


1 Answers

Try the following code:

textLayer.transform = CATransform3DMakeAffineTransform(CGAffineTransformMakeRotation(M_PI_2));

instead of:

[textLayer setValue:[NSNumber numberWithDouble:M_PI / 2.f forKey:@"transform.rotation"];
like image 51
sch Avatar answered Aug 10 '26 00:08

sch