Shimmer alternatives and similar libraries
Based on the "Animation" category
* Code Quality Rankings and insights are calculated and provided by Lumnify.
They vary from L1 to L5 with "L5" being the highest. Visit our partner's website for more details.
Do you think we are missing an alternative of Shimmer or a related project?
Shimmer is an easy way to add a shimmering effect to any view in your app. It's useful as an unobtrusive loading indicator.
Shimmer was originally developed to show loading status in Paper.
To use Shimmer, create a
FBShimmeringLayer and add your content. To start shimmering, set the
shimmering property to
An example of making a label shimmer:
FBShimmeringView *shimmeringView = [[FBShimmeringView alloc] initWithFrame:self.view.bounds]; [self.view addSubview:shimmeringView]; UILabel *loadingLabel = [[UILabel alloc] initWithFrame:shimmeringView.bounds]; loadingLabel.textAlignment = NSTextAlignmentCenter; loadingLabel.text = NSLocalizedString(@"Shimmer", nil); shimmeringView.contentView = loadingLabel; // Start shimmering. shimmeringView.shimmering = YES;
There's also an example project. In the example, you can swipe horizontally and vertically to try various shimmering parameters, or tap to start or stop shimmering. (To build the example locally, you'll need to open
FBShimmering.xcworkpace rather than the
There are two options:
- Shimmer is available as
- Manually add the files into your Xcode project. Slightly simpler, but updates are also manual.
Shimmer requires iOS 6 or later.
How it works
Shimmer uses the
-[CALayer mask] property to enable shimmering, similar to what's described in John Harper's 2009 WWDC talk (unfortunately no longer online). Shimmer uses CoreAnimation's timing features to smoothly transition "on-beat" when starting and stopping the shimmer.
We have a version of Shimmer for Android, too! It's also available on GitHub.
See the CONTRIBUTING file for how to help out.
Shimmer is BSD-licensed.
*Note that all licence references and agreements mentioned in the Shimmer README section above are relevant to that project's source code only.