GLScratchCard
GLScratchCard copied to clipboard
I loved the way payments app's like Google pay and PhonePe used scratch card option to reward it's user. Hence with 💛 cloned the same scratch card effect for you guys out there
GLScratchCard
Example
To run the example project, clone the repo, and run pod install
from the Example directory first.
Requirements
GLScratchCard
XCode 10 and Swift 4.2. With deployment target 11.0
.
Installation
Cocoapods
GLScratchCard
is available through CocoaPods. To install
it, simply add the following line to your Podfile:
pod 'GLScratchCard'
Manual
Copy the files from ~/Pods/DevelopmentPods/GLScratchCard/ to your project.
User Guide
Basic Usage
let controller = GLScratchCardController()
controller.scratchCardView.addDelegate(delegate: self)
controller.scratchCardView.bottomLayerView = UIImageView(image: UIImage(named: "cash_back"))
controller.scratchCardView.topLayerImage = UIImage(named:"scratch_image")!
controller.presentScratchController()
Break Down
let controller = GLScratchCardController()
Setting up Components
Titles to be shown initilly, before scratch starts
controller.scratchCardView.doneButtonTitle = "Gift to a friend"
controller.scratchCardView.scratchCardTitle = "Earn up to ₹1,0000"
controller.scratchCardView.scratchCardSubTitle = "From Google Pay \nEarned for paying \nGokul"
Title to be show after scratch ends,
controller.scratchCardView.afterScratchDoneButtonTitle = "Done"
controller.scratchCardView.afterScratchTitle = "Woohoo!"
controller.scratchCardView.afterScratchSubTitle = "Expect payment within a weak."
Top layer image view,
controller.scratchCardView.topLayerImage = UIImage(named:"scratch_image")!
Bottom layer image view (one that will be reviled after scratching ends),
controller.scratchCardView.bottomLayerView = UIImageView(image: UIImage(named: "cash_back"))
Can customise scratch size and shape (.round, .square, .butt),
controller.scratchCardView.scratchCardImageView.lineWidth = 50
controller.scratchCardView.scratchCardImageView.lineType = .round
Delegates
-
GLScratchCardDelegate
-
GLScratchCarImageViewDelegate
Add delegates,
controller.scratchCardView.addDelegate(delegate: self)
controller.scratchCardView.scratchCardImageView.addDelegate(delegate:self)
GLScratchCardDelegate
func didCloseButtonPressed(sender: UIButton)
func didDoneButtonPressed(sender: UIButton)
GLScratchCarImageViewDelegate
func scratchpercentageDidChange(value: Float)
func didScratchStarted()
func didScratchEnded()
Author
Gokul, [email protected]
Social
License
GLScratchCard is available under the MIT license. See the LICENSE file for more info.