如何在没有背景的情况下将UIView转换为UIImage?

时间:2011-08-01 06:59:05

标签: iphone xcode uiview uiimage

我有UIView包含一个pin图像和一个标签,因为我们知道UIView是矩形所以如果我将UIView转换为UIImage,UIImage也是矩形,我想让UIImage像一个pin图像,因为如果用户点击一个背景, UIImage的事件也将被调用..我想在没有背景的情况下将UIView转换为UIImage,它怎么可能?

我使用此方法将UIView更改为UIImage

-(UIImage *) ChangeViewToImage : (UIView *) view{

UIGraphicsBeginImageContext(view.bounds.size);
[view.layer renderInContext:UIGraphicsGetCurrentContext()];
  UIImage *img = UIGraphicsGetImageFromCurrentImageContext();
    UIGraphicsEndImageContext();

    return img;
}

嗯..像这样的例子,我有一个UIView的矩形和UIView中的三角形。然后我想让这个UIView成为一个UIImage,但我只想要没有背景的三角形,所以图像只是一个三角形..我怎么能这样做?

1 个答案:

答案 0 :(得分:8)

UIImage总是矩形的。您可以使用的是视图中的不透明度。如果除了你的图钉图像以外的所有内容都是透明的,那么就好像你只有一个图像的引脚。

使用:

view.backgroundColor = [UIColor clearColor];

使您的视图背景透明。