Advertisement
Guest User

Untitled

a guest
Feb 13th, 2016
76
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.19 KB | None | 0 0
  1. //
  2. // APCustomBlurView.swift
  3. // Created by Collin Hundley on 1/15/16.
  4. //
  5.  
  6. import UIKit
  7.  
  8. public class APCustomBlurView: UIVisualEffectView {
  9.  
  10. private let blurEffect: UIBlurEffect
  11. public var blurRadius: CGFloat {
  12. return blurEffect.valueForKeyPath("blurRadius") as! CGFloat
  13. }
  14.  
  15. public convenience init() {
  16. self.init(withRadius: 0)
  17. }
  18.  
  19. public init(withRadius radius: CGFloat) {
  20. let customBlurClass: AnyObject.Type = NSClassFromString("_UICustomBlurEffect")!
  21. let customBlurObject: NSObject.Type = customBlurClass as! NSObject.Type
  22. self.blurEffect = customBlurObject.init() as! UIBlurEffect
  23. self.blurEffect.setValue(1.0, forKeyPath: "scale")
  24. self.blurEffect.setValue(radius, forKeyPath: "blurRadius")
  25. super.init(effect: radius == 0 ? nil : self.blurEffect)
  26. }
  27.  
  28. required public init?(coder aDecoder: NSCoder) {
  29. fatalError("init(coder:) has not been implemented")
  30. }
  31.  
  32. public func setBlurRadius(radius: CGFloat) {
  33. guard radius != blurRadius else {
  34. return
  35. }
  36. blurEffect.setValue(radius, forKeyPath: "blurRadius")
  37. self.effect = blurEffect
  38. }
  39.  
  40. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement