From 111b3c5f62b5c0a0c50323cd9b85f6ca7c9d9fab Mon Sep 17 00:00:00 2001 From: Max Tymchii Date: Wed, 29 Jun 2016 18:10:23 +0300 Subject: [PATCH 1/2] Add block that can show image view with specific animation. --- MBRateApp/Classes/MBRateUs.swift | 3 ++- MBRateApp/Classes/MBRateUsViewController.swift | 10 +++++++++- 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/MBRateApp/Classes/MBRateUs.swift b/MBRateApp/Classes/MBRateUs.swift index a24a43c..1c9c9bd 100644 --- a/MBRateApp/Classes/MBRateUs.swift +++ b/MBRateApp/Classes/MBRateUs.swift @@ -15,7 +15,7 @@ public class MBRateUs{ public var rateUsInfo = MBRateUsInfo() - public func showRateUs(base:UIViewController, positiveBlock:()->Void, negativeBlock:()->Void, dismissBlock:()->Void){ + public func showRateUs(base:UIViewController, positiveBlock:()->Void, negativeBlock:()->Void, dismissBlock:()->Void, iconAnimationBlock:((iconView: UIImageView)->Void)? = nil ){ let podBundle = NSBundle(forClass: self.dynamicType) let storyboard = UIStoryboard(name: "RateUs", bundle: podBundle) let vc = storyboard.instantiateInitialViewController() as! MBRateUsViewController @@ -23,6 +23,7 @@ public class MBRateUs{ vc.positiveBlock = positiveBlock vc.negativeBlock = negativeBlock vc.dismissBlock = dismissBlock + vc.iconAnimationBlock = iconAnimationBlock vc.rateUsInfo = self.rateUsInfo diff --git a/MBRateApp/Classes/MBRateUsViewController.swift b/MBRateApp/Classes/MBRateUsViewController.swift index b9f905b..20a8d7c 100644 --- a/MBRateApp/Classes/MBRateUsViewController.swift +++ b/MBRateApp/Classes/MBRateUsViewController.swift @@ -55,6 +55,7 @@ class MBRateUsViewController : UIViewController { var positiveBlock : (()->Void)? var negativeBlock : (()->Void)? var dismissBlock : (()->Void)? + var iconAnimationBlock:((iconView: UIImageView)->Void)? var shouldRate : Bool var starImageOn : UIImage @@ -85,10 +86,17 @@ class MBRateUsViewController : UIViewController { } self.imageView.image = self.rateUsInfo?.titleImage - self.dismissButton.tintColor = self.rateUsInfo?.dismissButtonColor } + override func viewWillAppear(animated: Bool) { + super.viewWillAppear(animated) + + if let iconAnimationBlock = self.iconAnimationBlock { + iconAnimationBlock(iconView: self.imageView) + } + } + @IBAction func dismiss(sender: UIButton) { self.dismissViewControllerAnimated(true, completion: { _ in self.dismissBlock?()}) From 76e42d873ccbda948f81b181c958193550f21e14 Mon Sep 17 00:00:00 2001 From: Max Tymchii Date: Wed, 29 Jun 2016 18:13:59 +0300 Subject: [PATCH 2/2] Minor update. --- MBRateApp/Classes/MBRateUs.swift | 2 +- MBRateApp/Classes/MBRateUsViewController.swift | 5 +---- 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/MBRateApp/Classes/MBRateUs.swift b/MBRateApp/Classes/MBRateUs.swift index 1c9c9bd..9040ded 100644 --- a/MBRateApp/Classes/MBRateUs.swift +++ b/MBRateApp/Classes/MBRateUs.swift @@ -15,7 +15,7 @@ public class MBRateUs{ public var rateUsInfo = MBRateUsInfo() - public func showRateUs(base:UIViewController, positiveBlock:()->Void, negativeBlock:()->Void, dismissBlock:()->Void, iconAnimationBlock:((iconView: UIImageView)->Void)? = nil ){ + public func showRateUs(base:UIViewController, positiveBlock:()->Void, negativeBlock:()->Void, dismissBlock:(()->Void)? = nil, iconAnimationBlock:((iconView: UIImageView)->Void)? = nil ){ let podBundle = NSBundle(forClass: self.dynamicType) let storyboard = UIStoryboard(name: "RateUs", bundle: podBundle) let vc = storyboard.instantiateInitialViewController() as! MBRateUsViewController diff --git a/MBRateApp/Classes/MBRateUsViewController.swift b/MBRateApp/Classes/MBRateUsViewController.swift index 20a8d7c..098c67e 100644 --- a/MBRateApp/Classes/MBRateUsViewController.swift +++ b/MBRateApp/Classes/MBRateUsViewController.swift @@ -91,10 +91,7 @@ class MBRateUsViewController : UIViewController { override func viewWillAppear(animated: Bool) { super.viewWillAppear(animated) - - if let iconAnimationBlock = self.iconAnimationBlock { - iconAnimationBlock(iconView: self.imageView) - } + self.iconAnimationBlock?(iconView: self.imageView) }