2015-11-22 91 views
1

使用IBDesignable类可以将VisualEffect(模糊)添加到UIImageView中吗? (我已经搜索了一切,到目前为止没有找到任何东西)我已经尝试添加一个layer.addSublayer(图层:CALayer),但没有视觉效果的CALayer使用IBDesignable模糊ImageView

回答

0

您可以尝试制作UIImageView的子类,如以下:

@IBDesignable 
class Blur: UIImageView { 

    @IBInspectable var blurImage:UIImage?{ 
     didSet{ 
      updateImage(blurImage!) 
     } 
    } 


    func updateImage(imageBlur:UIImage){ 
     let imageToBlur:CIImage = CIImage(image: imageBlur)! 
     let blurFilter:CIFilter = CIFilter(name: "CIGaussianBlur")! 
     blurFilter.setValue(imageToBlur, forKey: "inputImage") 
     let resultImage:CIImage = blurFilter.valueForKey("outputImage")! as! CIImage 
     self.image = UIImage(CIImage: resultImage) 
    } 



    } 

你将不得不玩弄它,以得到你想要的样子。


更多有关CoreImageFilter可以发现here

+0

感谢这个完美的作品。 –

+0

你可以说blurFilter.setValue(5,forKey:kCIInputRadiusKey) – beyowulf

+0

再次感谢(阅读文档后删除我的评论)。 –