简体   繁体   中英

UIVisualEffectView not working on iPhone 6

It appears that the UIVisualEffectView does not blur the background when run on iPhone 6/6S. I have only seen one other person mention this, on the Apple Developer Forums , but nothing here.

I've written a sample project to demonstrate this. All you have to do is run this on an actual iPad and an iPhone 6 and you'll see. Note you'll need to add an image to your project.

It works fine in the simulator, but the blur view is opaque when run on an actual iPhone 6 or 6S.

My simple view controller:

class ViewController: UIViewController {

  override func viewDidLoad() {
    super.viewDidLoad()

    let effectView = UIVisualEffectView.init(effect: UIBlurEffect.init(style: .Light))
    effectView.frame = CGRectMake(20, 100, 200, 200)

    let imageView = UIImageView.init(image: UIImage(named: "image"))
    imageView.contentMode = UIViewContentMode.ScaleAspectFill
    imageView.frame = self.view.bounds

    self.view.addSubview(imageView)
    self.view.addSubview(effectView)
  }

}

I'm using Xcode 7 GM and running iOS 9.0.2 on both iPad Mini 2 and iPhone 6S.

我在iPhone的“辅助功能”设置中关闭了“降低透明度”。

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM