Disintegrate alternatives and similar libraries
Based on the "Animation" category.
Alternatively, view Disintegrate alternatives based on common mentions on social networks and blogs.
-
AnimatedCollectionViewLayout
A UICollectionViewLayout subclass that adds custom transitions/animations to the UICollectionView without effecting your existing code. -
AlertTransition
AlertTransition is a extensible library for making view controller transitions, especially for alert transitions. -
ContainerController
👉↕️📱ContainerController 🧩✨⚙️ is a UI Component Swipe-Panel (Customizable). 💡 The idea is copied from the app: Apple Maps, Stocks. Swift version -
SPPerspective
Widgets iOS 14 animation with 3D and dynamic shadow. Customisable transform and duration. -
AKVideoImageView
UIImageView subclass that allows you to display a looped video and dynamically switch it. -
Wobbly
(Animate CSS) animations for iOS. An easy to use library of iOS animations. As easy to use as an easy thing. -
VariousViewsEffects
Various view's effects for iOS, written in Swift. Allows you to animate views nicely with easy to use extensions. Currently supported animations: Glass Break, Explode, Snowflakes. Every animation is randomized.
InfluxDB - Purpose built for real-time analytics at any scale.
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest.
Do you think we are missing an alternative of Disintegrate or a related project?
README
Disintegrate
Disintegrate is a small library providing an animation inspired by how our favorite heroes disappeared at the end of Avengers: Infinity War. The view or layer that you use it on is divided into small triangles, which then move into one direction and fade away. You can customize the estimated number of triangles and the direction they will move to.
Usage
Disintegrate adds a single method to both UIView and CALayer classes.
func disintegrate(direction: DisintegrationDirection = DisintegrationDirection.random(),
estimatedTrianglesCount: Int = 66,
completion: (() -> ())? = nil)
The animation can be customized by two parameters:
direction
- direction in which the triangle particles will move. By default, the direction is chosen randomly from the set of 8 available options: up, down, left, right, upper left, upper right, lower left and lower right.estimatedTrianglesCount
- estimated number of triangle particles. Specifying it allows you to adjust the performance of the animation to your needs. For example, if you know that you want to use it on a smaller view, you can divide it into more triangles. Keep in mind, that it is only an estimate, and the final count of the triangles will also depend on the exact size of the view or the layer. This parameter does have an empirically chosen default value, so you don't have to specify it.
Additionally, you can specify a completion block that will be executed when the animation finishes.
Here are some examples of using Disintegrate:
avatarImageView.disintegrate()
cancelButton.disintegrate(direction: .upperLeft)
gradientLayer.disintegrate(estimatedTrianglesCount: 100)
errorLabel.disintegrate(direction: .down, estimatedTrianglesCount: 200) {
print("Error label animation finished.")
}
Installation
CocoaPods
Disintegrate is available through CocoaPods. To install it, simply add the following line to your Podfile:
pod 'Disintegrate'
Carthage
To integrate Disintegrate into your Xcode project using Carthage, specify it in your Cartfile:
github "dbukowski/Disintegrate" ~> 0.2.0
Run carthage update to build the framework and drag the built Disintegrate.framework into your Xcode project.
Manually
Alternatively, you can simply copy the 3 files from Disintegrate/Classes
directory.
Example
To run the example project, clone the repo, and run pod install
from the Example directory first.
Requirements
Disintegrate requires iOS 8.0 or later.
Author
Maintained by Maciej Mastalerz, [email protected]
Created by Dariusz Bukowski, [email protected]
License
Disintegrate is available under the MIT license. See the LICENSE file for more info.
*Note that all licence references and agreements mentioned in the Disintegrate README section above
are relevant to that project's source code only.