2012-02-13 8 views
3

は、これは本当に動作していないが、必要があります。実際には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"]); 

私は間違っていますか?

答えて

7

次のコードを試してみてください:いや...ドキュメントは「回転」「rotation.z」私はちょうどこれを試してみましたと同じであることを述べている

[textLayer setValue:[NSNumber numberWithDouble:M_PI/2.f forKey:@"transform.rotation"]; 
+0

それはそれをしました!私はまだ他の方法がうまくいかなかった理由は分かりませんが。それは本当にすべきドキュメントによると。ありがとう! – olynoise

0

CALayerは、あなたが与えた値を覚えています。私はあなたが "transform.rotation.z"で回転する必要があるので、間違っていると信じています。

+0

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

の代わりに確かに...運がない。 – olynoise

関連する問題