0

重複の可能性:
回転した UIImageView のための迅速で汚れたアンチエイリアシング手法はありますか?

アプリに境界線のある画像ビュー (myImage) があります。

[myImage.layer setBorderColor: [[UIColor whiteColor] CGColor]];
[myImage.layer setBorderWidth: 1];

次に、次のコードを使用して回転させます。この場合は 20 度です。

NSInteger r = 20;
CABasicAnimation *imageRotation = [CABasicAnimation animationWithKeyPath:@"transform.rotation"];
imageRotation.toValue = [NSNumber numberWithFloat:((r*M_PI)/ -180)];
imageRotation.duration = 0.01;
imageRotation.repeatCount = 1;
imageRotation.removedOnCompletion = NO;
imageRotation.autoreverses=NO;
imageRotation.fillMode = kCAFillModeForwards;
[myImage.layer addAnimation:imageRotation forKey:@"imageRotation"];

上記のコードは画像を回転させますが、アニメーション化されているのを見ることはできません (imageRotation.duration が非常に低いため)。回転が完了すると、移動も回転もしていない20 回転したイメージ ビューになります。

このコードは正常に動作していますが、境界線と含まれる画像の両方の線が滑らかでなく、アプリの表示が台無しになっています。

これを引き起こしている可能性のあるもの、または解決方法を知っている人はいますか。乾杯

4

2 に答える 2

0

試す

CGContextSetInterpolationQuality(context, kCGInterpolationHigh);
于 2012-11-02T14:32:20.833 に答える
0

imageView で transform プロパティを使用してみましたか? これを試して :

myImage.transform = CGAffineTransformMakeRotation((r*M_PI)/ -180);
于 2012-11-02T14:33:57.470 に答える