如何模糊UIImageView的图像?

时间:2015-03-06 12:13:58

标签: ios xcode swift

我试图模糊UITableView小区的背景图片。

我目前有以下代码(从研究中获得):

func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell
{
        let cell = UITableViewCell()
        var imageView = UIImageView()
        var image = UIImage(data: events[indexPath.row].valueForKey("image") as NSData)
        let blurEffect = UIBlurEffect(style: UIBlurEffectStyle.Dark)
        let blurEffectView = UIVisualEffectView(effect: blurEffect)
        blurEffectView.frame = imageView.bounds
        imageView.addSubview(blurEffectView)
        imageView.image = image
        cell.backgroundView = imageView
        return cell
}

我的背景图像显示正常,但模糊效果并不好。 没有警告/错误,我真的不知道这里的问题是什么。

我很感激任何帮助。

1 个答案:

答案 0 :(得分:0)

你可以继承UIImageView并创建像这样的模糊视图

class BlurImageView: UIImageView {

  override func awakeFromNib() {
    super.awakeFromNib()
  }

  required init(coder aDecoder: NSCoder!){
      super.init(coder: aDecoder)   
      var blur:UIBlurEffect = UIBlurEffect(style: UIBlurEffectStyle.Light)
      var effectView:UIVisualEffectView = UIVisualEffectView (effect: blur)
      effectView.frame = frame
      addSubview(effectView)
  }
}