2015-11-22 39 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

再次感謝(閱讀文檔後刪除我的評論)。 –