1つはimageViewと呼ばれ、もう1つはsubView(imageViewのサブビュー)と呼ばれます。
これらのビューの画像をブレンドして、ユーザーがブレンドのアルファをパンで切り替えることができるようにしたいと考えています。私のコードは機能しますが、現在、パン ジェスチャを動かすたびに画像を再描画しているため、コードが遅くなります。これを行うためのより高速で効率的な方法はありますか?
ボーナス Q: subView 画像を拡大して描画できるようにしたいです。現在、subView を UIViewContentModeCenter に設定していますが、このコンテンツ モードでは画像の拡大部分を描画できないようです。これを回避する方法はありますか?
私のドローレクト:
- (void)drawRect:(CGRect)rect
{
float xCenter = self.center.x - self.currentImage1.size.width/2.0;
float yCenter = self.center.y - self.currentImage1.size.height/2.0;
subView.alpha = self.blendAmount; // Customize the opacity of the top image.
UIGraphicsBeginImageContext(self.currentImage1.size);
CGContextRef c = UIGraphicsGetCurrentContext();
CGContextSetBlendMode(c, kCGBlendModeColorBurn);
[imageView.layer renderInContext:c];
self.blendedImage = UIGraphicsGetImageFromCurrentImageContext();
UIGraphicsEndImageContext();
[self.blendedImage drawAtPoint:CGPointMake(xCenter,yCenter)];
}