Dynamic switchers, various animated views, marvelous text fields and so much more!
The top 5 best iOS libraries that make your app's UI truly remarkable are:
- Expanding Collection
Let's start with TKSwitcherCollection!
TKSwitcherCollection is basically a collection of animated switch controls.
It's tremendously easy to use – all you need to do is download and drop the TKSwitcherCollection into your project and you're good to go.
Currently, there are four different switches you can choose from:
- TKSimpleSwitch – The original switch available on iOS but you can also use it vertically
- TKExchangeSwitch – A switch that changes from in touch
- TKSmileSwitch – Exhibit A. A switch that has two values: sad and happy.
- TKLiquidSwitch – A switch with more of a liquid-style animation
You can read more about it in this GitHub repository.
Give your input spirit by using the CocoaTextField!
CocoaTextField is a tiny, very customizable text field library that can be used both with storyboards and programmatically.
And, to state the obvious, you can customize some things like active/inactive hint color, default or focused background color, border and error color, etc.
In case you want to use it programmatically, below is an example of it:
let v = CocoaTextField() v.inactiveHintColor = UIColor(red: 145/255, green: 222/255, blue: 233/255, alpha: 1) v.activeHintColor = UIColor(red: 777/255, green: 122/255, blue: 187/255, alpha: 1) v.focusedBackgroundColor = UIColor(red: 200/255, green: 230/255, blue: 250/255, alpha: 1) v.defaultBackgroundColor = UIColor(red: 250/255, green: 250/255, blue: 250/255, alpha: 1) v.borderColor = UIColor(red: 239/255, green: 239/255, blue: 239/255, alpha: 1) v.errorColor = UIColor(red: 231/255, green: 76/255, blue: 60/255, alpha: 0.7) v.borderWidth = 3 v.cornerRadius = 14
In case you want to use it and get more information, here's the GitHub repository for it.
Expanding Collection is a native library made specifically for Swift that basically creates animated material design UI cards peek and pop controller.
If you want to use this particular library, you have to import it by calling expanding_collection, and then create a UICollectionViewCell that inherits BasePageCollectionCell. Then all that's left to do is to add a FrontView and BackView and you're good to go for the next step.
Next, you can create a UIViewController that inherits the ExpandingViewController, register the cell created in the first step and add the UICollectionViewDataSource.
But, if you're still having trouble we advise you to go to the GitHub repository and check out the whole implementation system yourself.
It's very well known that UICollectionView doesn't have a native transition effect animation as the default when you scroll between two or more items.
AnimatedCollectionViewLayout is a UICollectionViewLayout subclass that basically adds customizable transitions and animations to your UICollectionView. And it does all this without affecting your current code whatsoever!
In order to use it, you will need to import the library into your project. To do so, you have to import it along with the other libraries. Next, create an AnimatedCollectionViewLayout object, set its animator, and assign it to your UICollectionView.
And you're good to go.
But, just to be sure you might want to check out the GitHub repository first. It has all the useful information on implementation and usage.
My absolute favorite!
CollectionViewSlantedLayout is another subclass of the UICollectionViewLayout that allows you to display slanted cells inside a UICollectionView.
And better yet, this library works with every UICollectionView, whether horizontal or vertical with Dynamic cells height.
Among the things you can customize you can find:
- Slanting size
- Slanting direction
- Slanting angle
- Scroll direction
- Line spacing
- Item size
- Excluding the last or first cell slanting
To know more about this, please head to Yacir's GitHub repository. You'll find all you need there.
Did we forget something to add to the “Best iOS Libraries to Make Your App's UI Truly Remarkable” list? Contact us!