各ビューには約16のUIImageViewが含まれる4つのUIViewがあります。そして、以下のコードを使用してすべての UIImageViews にマスクを適用しています
-(void)setMask:(UIImage*)maskImage forImageView:(UIImageView*)imageView
{
CALayer *mask = [[[CALayer alloc] init] autorelease];
mask.contents = (id)[maskImage CGImage];
mask.frame = CGRectMake(0, 0, 1024, 768);
imageView.layer.mask = mask;
imageView.layer.masksToBounds = YES;
return;
}
これは UIImageView マスキングの正しいコードですか?
各 UIImageView は、マスクを介して画像を変更します。しかし、5つ以上のUIImageViewで画像を変更した後、「メモリ警告を受け取ります。」表示されてクラッシュします。すべての画像は 1024*768 解像度で、マスク画像も含まれます。