Poi alternatives and similar libraries
Based on the "Animation" category.
Alternatively, view Poi alternatives based on common mentions on social networks and blogs.
-
lottie-ios
An iOS library to natively render After Effects vector animations -
IBAnimatable
Design and prototype customized UI, interaction, navigation, transition and animation for App Store ready Apps in Interface Builder with IBAnimatable. -
SkeletonView
☠️ An elegant way to show users that something is happening and also prepare them to which contents they are awaiting -
AnimatedCollectionViewLayout
A UICollectionViewLayout subclass that adds custom transitions/animations to the UICollectionView without effecting your existing code. -
Presentation
:bookmark_tabs: Presentation helps you to make tutorials, release notes and animated pages. -
Gemini
Gemini is rich scroll based animation framework for iOS, written in Swift. -
EasyAnimation
A Swift library to take the power of UIView.animateWithDuration(_:, animations:...) to a whole new level - layers, springs, chain-able animations and mixing view and layer animations together! -
Fluid Slider
:octocat:💧 A slider widget with a popup bubble displaying the precise value selected. Swift UI library made by @Ramotion -
DKChainableAnimationKit
Easy to read and write chainable animations in Swift. -
Sica
:deer: Simple Interface Core Animation. Run type-safe animation sequencially or parallelly -
ChainPageCollectionView
A custom View with fancy collectionView animation -
ZoomTransitioning
ZoomTransitioning provides a custom transition with image zooming animation and swiping the screen edge. -
navigation-toolbar
:octocat: Navigation toolbar is a slide-modeled UI navigation controller made by @Ramotion -
FlightAnimator
Advanced Natural Motion Animations, Simple Blocks Based Syntax -
CAROUSEL
List a collection of items in a horizontally scrolling view. A scaling factor controls the size of the items relative to the center. -
Garland View
:octocat: ≡ GarlandView seamlessly transitions between multiple lists of content. Swift UI library made by @Ramotion -
DSGradientProgressView
A simple animated progress bar in Swift -
SPPerspective
Widgets iOS 14 animation with 3D and dynamic shadow. Customisable transform and duration. -
TheAnimation
Type-safe CAAnimation wrapper. It makes preventing to set wrong type values. -
Walker
Each step you take reveals a new horizon. You have taken the first step today. -
DottedProgressBar
Simple and powerful animated progress bar with dots -
Numbers Animation
Numbers animation allows you to click on different numbers and accordingly it will animate numbers in a cool way. It has a very attractive UI and is very easy to use.
Appwrite - The Open Source Firebase alternative introduces iOS support
* 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 Poi or a related project?
Popular Comparisons
README
Poi
You can use tinder UI like tableview method
Installation
Manual Installation
- Use this command
git clone [email protected]:HideakiTouhara/Poi.git
- Import Poi.xcodeproj to your project
- Add Poi.frameworkiOS to Embedded Binaries
Cocoa Pods
Please write the below code in Podfile
pod ‘Poi’
Carthage
Write this code in your Cartfile.
github "HideakiTouhara/Poi"
and implement this command
carthage update
Add Poi.framework in /Carthage/Build/iOS/ to Embedded Binaries.
Usage
Create PoiView in storyboard or swift file
import Poi
@IBOutlet weak var poiView: PoiView!
// Change View's class to PoiView in Attributes inspector.
or
import Poi
let poiView = PoiView()
self.view.addSubView(poiView)
Conform to PoiViewDataSource and PoiViewDelegate
class ViewController: UIViewController, PoiViewDataSource, PoiViewDelegate {
Designate delegate target.
Please put this code after setting card contents.
poiView.dataSource = self
poiView.delegate = self
PoiViewDataSource method
Set swipeable card number(required method)
func numberOfCards(_ poi: PoiView) -> Int
Set swipeable card(required method)
func poi(_ poi: PoiView, viewForCardAt index: Int) -> UIView
Set overlay image if right or left swiped
func poi(_ poi: PoiView, viewForCardOverlayFor direction: SwipeDirection) -> UIImageView? {
switch direction {
case .right:
return UIImageView(image: #imageLiteral(resourceName: "good"))
case .left:
return UIImageView(image: #imageLiteral(resourceName: "bad"))
}
}
PoiViewDelegate method
When did swipe, this method is called
func poi(_ poi: PoiView, didSwipeCardAt: Int, in direction: SwipeDirection)
When last card was swiped, this method is called
func poi(_ poi: PoiView, runOutOfCardAt: Int, in direction: SwipeDirection)
Public method
Swipe current card
func swipeCurrentCard(to direction: SwipeDirection)
Undo animation and go back previous card
func undo()
Example
Check the Example file!
import UIKit
import Poi
class ViewController: UIViewController, PoiViewDataSource, PoiViewDelegate {
@IBOutlet weak var poiView: PoiView!
var sampleCards = [UIView]()
override func viewDidLoad() {
super.viewDidLoad()
var colors = [UIColor.red, UIColor.orange]
for i in (0..<2) {
sampleCards.append(UIView(frame: CGRect(x: 0, y: 0, width: 240, height: 128)))
sampleCards[i].backgroundColor = colors[i]
}
poiView.dataSource = self
poiView.delegate = self
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
// MARK: PoiViewDataSource
func numberOfCards(_ poi: PoiView) -> Int {
return 2
}
func poi(_ poi: PoiView, viewForCardAt index: Int) -> UIView {
return sampleCards[index]
}
func poi(_ poi: PoiView, viewForCardOverlayFor direction: SwipeDirection) -> UIImageView? {
switch direction {
case .right:
return UIImageView(image: #imageLiteral(resourceName: "good"))
case .left:
return UIImageView(image: #imageLiteral(resourceName: "bad"))
}
}
// MARK: PoiViewDelegate
func poi(_ poi: PoiView, didSwipeCardAt: Int, in direction: SwipeDirection) {
switch direction {
case .left:
print("left")
case .right:
print("right")
}
}
func poi(_ poi: PoiView, runOutOfCardAt: Int, in direction: SwipeDirection) {
print("last")
}
// MARK: IBAction
@IBAction func OKAction(_ sender: UIButton) {
poiView.swipeCurrentCard(to: .right)
}
@IBAction func undo(_ sender: UIButton) {
poiView.undo()
}
}
Contribution
Please create issues or submit pull requests for anything.
License
Poi is released under the MIT license.
© 2018 GitHub, Inc.
*Note that all licence references and agreements mentioned in the Poi README section above
are relevant to that project's source code only.