DynamicBlurView
DynamicBlurView is a dynamic and high performance UIView subclass for Blur.
Appetize's Demo
- Since using the CADisplayLink, it is a high performance.
 - Can generate a plurality of BlurView.
 
Requirements
- Swift 5
 - iOS 8.0 or later
 - tvOS 9.0 or later
 
How to Install DynamicBlurView
CocoaPods
Add the following to your Podfile:
pod "DynamicBlurView"Carthage
Add the following to your Cartfile:
github "KyoheiG3/DynamicBlurView"Usage
Example
Blur the whole
let blurView = DynamicBlurView(frame: view.bounds)
blurView.blurRadius = 10
view.addSubview(blurView)Animation
UIView.animateWithDuration(0.5) {
    blurView.blurRadius = 30
}Ratio
blurView.blurRatio = 0.5Variable
var blurRadius: CGFloat- Strength of the blur.
 
var trackingMode: TrackingMode- Mode for update frequency.
 Commonis constantly updated.Trackingis only during scrolling update.Noneis not update.
var blendColor: UIColor?- Blend in the blurred image.
 
var iterations: Int- Number of times for blur.
 - Default is 3.
 
var isDeepRendering: Bool- If the view want to render beyond the layer, should be true.
 - Default is false.
 
var blurRatio: CGFloat- When none of tracking mode, it can change the radius of blur with the ratio. Should set from 0 to 1.
 - Default is 1.
 
var quality: CaptureQuality- Quality of captured image.
 - Default is medium.
 
Function
func refresh()- Remove cache of blur image then get it again.
 
func remove()- Remove cache of blur image.
 
func animate()- Should use when needs to change layout with animation when is set none of tracking mode.
 
Acknowledgements
- Inspired by FXBlurView in nicklockwood.
 
Author
Kyohei Ito
Follow me 
LICENSE
Under the MIT license. See LICENSE file for details.

