UIImageView圆角有白色背景

时间:2011-10-06 15:51:42

标签: iphone background rounded-corners

圆角有白色背景。 我跟着其他SO答案,但不知道为什么我得到这个白人

贝娄是代码。

UIView* testView = [[[UIView alloc] initWithFrame: self.animationView.bounds] autorelease];
UIImageView* testImageView = [[[UIImageView alloc] initWithImage:backImage] autorelease];
[testView addSubview: testImageView];
testImageView.backgroundColor = [UIColor clearColor];

CALayer* layer = [testView layer];
bool prev = layer.masksToBounds;
layer.masksToBounds = YES;
layer.cornerRadius = 30;
testView.clipsToBounds = YES;
UIImage* image = [UIImage captureView: testView];
//this image has the white regions in the four corners.
// when seen on iphone photo album


+ (UIImage*)captureView:(UIView*)view
{   
    CGSize size = view.bounds.size;
    CGContextRef context = CreateARGBBitmapContext(size);
    CGContextTranslateCTM(context, 0, size.height);
    CGContextScaleCTM(context, 1.0, -1.0);
    [view.layer renderInContext: context];
    CGImageRef imageRef = CGBitmapContextCreateImage(context);
    UIImage* img = [UIImage imageWithCGImage: imageRef];
    CGImageRelease(imageRef);
    CGContextRelease(context);
    return img;
}

2 个答案:

答案 0 :(得分:1)

添加[testImageView setClipsToBounds:YES]

答案 1 :(得分:0)

可能需要设置testImageView.opaque = NO