Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/efremidze/visualeffectview
Dynamic blur background view with tint color (UIVisualEffectView subclass) 📱
https://github.com/efremidze/visualeffectview
apple blur effects ios swift tint uiblureffect uivisualeffectview
Last synced: 1 day ago
JSON representation
Dynamic blur background view with tint color (UIVisualEffectView subclass) 📱
- Host: GitHub
- URL: https://github.com/efremidze/visualeffectview
- Owner: efremidze
- License: mit
- Created: 2016-05-26T18:24:29.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2024-09-04T00:40:42.000Z (2 months ago)
- Last Synced: 2024-09-17T19:16:57.622Z (about 2 months ago)
- Topics: apple, blur, effects, ios, swift, tint, uiblureffect, uivisualeffectview
- Language: Swift
- Homepage:
- Size: 6.9 MB
- Stars: 1,125
- Watchers: 24
- Forks: 80
- Open Issues: 10
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
# VisualEffectView
[![Swift](https://github.com/efremidze/VisualEffectView/actions/workflows/ci.yml/badge.svg)](https://github.com/efremidze/VisualEffectView/actions/workflows/ci.yml)
[![Build Status](https://travis-ci.org/efremidze/VisualEffectView.svg?branch=master)](https://travis-ci.org/efremidze/VisualEffectView)
[![Carthage compatible](https://img.shields.io/badge/Carthage-compatible-4BC51D.svg?style=flat)](https://github.com/Carthage/Carthage)
[![Language](https://img.shields.io/badge/Swift-5-orange.svg?style=flat)](https://swift.org)
[![Version](https://img.shields.io/cocoapods/v/VisualEffectView.svg?style=flat)](http://cocoapods.org/pods/VisualEffectView)
[![License](https://img.shields.io/cocoapods/l/VisualEffectView.svg?style=flat)](http://cocoapods.org/pods/VisualEffectView)**VisualEffectView** is a blur effect library with tint color support. This library uses the [UIVisualEffectView](https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIVisualEffectView/) to generate the blur.
```
$ pod try VisualEffectView
```## Requirements
- iOS 14.0+ (SwiftUI support)
- Swift 5 (VisualEffectView 4.x), Swift 4 (VisualEffectView 3.x), Swift 3 (VisualEffectView 2.x), Swift 2 (VisualEffectView 1.x)## Usage
Add an instance of VisualEffectView to your view.
```swift
import VisualEffectViewlet visualEffectView = VisualEffectView(frame: CGRect(x: 0, y: 0, width: 320, height: 480))
// Configure the view with tint color, blur radius, etc
visualEffectView.colorTint = .redColor()
visualEffectView.colorTintAlpha = 0.2
visualEffectView.blurRadius = 10
visualEffectView.scale = 1addSubview(visualEffectView)
```Depending on the desired effect, the effect may affect content layered behind the view or content added to the visual effect view’s contentView. After you add the visual effect view to the view hierarchy, add any subviews to the contentView property of the visual effect view. Do not add subviews directly to the visual effect view itself. Refer to the [UIVisualEffectView](https://developer.apple.com/library/ios/documentation/UIKit/Reference/UIVisualEffectView/) for more info.
For more examples, take a look at the example project.
### Customization
```swift
var colorTint: UIColor // tint color. default is nil
var colorTintAlpha: CGFloat // tint color alpha. default is 0
var blurRadius: CGFloat // blur radius. default is 0
var scale: CGFloat // scale factor. default is 1
```If you want `colorTintAlpha` to be different from `0`, make sure you always set it right after setting the `colorTint` or it may not be applied as expected.
You also have to make sure you don't set `colorTintAlpha` if `colorTint` is `nil`.### Storyboard Support
Works great with storyboards and xibs.
### SwiftUI Support
VisualEffectView supports SwiftUI.
```swift
import VisualEffectViewstruct ContentView: View {
var body: some View {
VisualEffect(colorTint: .white, colorTintAlpha: 0.5, blurRadius: 18, scale: 1)
}
}
```Make sure that `colorTintAlpha` is not set when `colorTint` is `nil`.
## Installation
### CocoaPods
To install with [CocoaPods](http://cocoapods.org/), simply add this in your `Podfile`:
```ruby
use_frameworks!
pod "VisualEffectView"
```### Carthage
To install with [Carthage](https://github.com/Carthage/Carthage), simply add this in your `Cartfile`:
```ruby
github "efremidze/VisualEffectView"
```### Manually
1. Download and drop ```VisualEffectView.swift``` in your project.
2. Congratulations!## Communication
- If you **found a bug**, open an issue.
- If you **have a feature request**, open an issue.
- If you **want to contribute**, submit a pull request.## Disclaimer
VisualEffectView utilizes a private UIKit API to do its magic. Use caution, submitting this code to the App Store adds the risk of being rejected!
## Credits
https://github.com/collinhundley/APCustomBlurView
## License
VisualEffectView is available under the MIT license. See the LICENSE file for more info.