From ef4eab076370664b289e996f15219c92c94bb736 Mon Sep 17 00:00:00 2001 From: Paula Leite Date: Mon, 27 May 2019 17:50:01 -0300 Subject: [PATCH 1/2] Bronze e Silver feitos, Gold comecado --- .DS_Store | Bin 0 -> 6148 bytes UIAnimation.xcodeproj/project.pbxproj | 20 ++- .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../UserInterfaceState.xcuserstate | Bin 0 -> 29083 bytes .../xcschemes/xcschememanagement.plist | 14 ++ .../xcschemes/xcschememanagement.plist | 0 UIAnimation/AppDelegate.swift | 0 .../AppIcon.appiconset/Contents.json | 0 .../AppIcon.appiconset/icon-AppStore.png | Bin .../AppIcon.appiconset/icon-iPad20.png | Bin .../AppIcon.appiconset/icon-iPad20@2x.png | Bin .../AppIcon.appiconset/icon-iPad29.png | Bin .../AppIcon.appiconset/icon-iPad29@2x.png | Bin .../AppIcon.appiconset/icon-iPad40.png | Bin .../AppIcon.appiconset/icon-iPad40@2x.png | Bin .../AppIcon.appiconset/icon-iPad76.png | Bin .../AppIcon.appiconset/icon-iPad76@2x.png | Bin .../AppIcon.appiconset/icon-iPad83@2x.png | Bin .../AppIcon.appiconset/icon-iPhone20@2x.png | Bin .../AppIcon.appiconset/icon-iPhone20@3x.png | Bin .../AppIcon.appiconset/icon-iPhone29@2x.png | Bin .../AppIcon.appiconset/icon-iPhone29@3x.png | Bin .../AppIcon.appiconset/icon-iPhone40@2x.png | Bin .../AppIcon.appiconset/icon-iPhone40@3x.png | Bin .../AppIcon.appiconset/icon-iPhone60@2x.png | Bin .../AppIcon.appiconset/icon-iPhone60@3x.png | Bin UIAnimation/Assets.xcassets/Contents.json | 0 .../icon1.imageset/Contents.json | 0 .../Assets.xcassets/icon1.imageset/icon1.png | Bin .../icon1.imageset/icon1@2x.png | Bin .../icon1.imageset/icon1@3x.png | Bin .../icon2.imageset/Contents.json | 0 .../icon2.imageset/icon2@1x.png | Bin .../icon2.imageset/icon2@2x.png | Bin .../icon2.imageset/icon2@3x.png | Bin .../icon3.imageset/Contents.json | 0 .../Assets.xcassets/icon3.imageset/icon3.png | Bin .../icon3.imageset/icon3@2x.png | Bin .../icon3.imageset/icon3@3x.png | Bin .../icon4.imageset/Contents.json | 0 .../icon4.imageset/icon4@1x.png | Bin .../icon4.imageset/icon4@2x.png | Bin .../icon4.imageset/icon4@3x.png | Bin .../rocket.imageset/Contents.json | 0 .../rocket.imageset/rocket.png | Bin .../rocket2.imageset/Contents.json | 0 .../rocket2.imageset/rocket2.png | Bin .../world1.imageset/Contents.json | 0 .../world1.imageset/world1.png | Bin .../Base.lproj/LaunchScreen.storyboard | 0 UIAnimation/Base.lproj/Main.storyboard | 170 +++++++++++++++++- UIAnimation/BronzeViewController.swift | 98 ++++++++++ UIAnimation/GoldViewController.swift | 30 ++++ UIAnimation/Info.plist | 0 UIAnimation/LoginViewController.swift | 33 ++++ UIAnimation/SilverViewController.swift | 94 ++++++++++ UIAnimation/ViewController.swift | 55 +++++- 58 files changed, 502 insertions(+), 12 deletions(-) create mode 100644 .DS_Store mode change 100644 => 100755 UIAnimation.xcodeproj/project.pbxproj mode change 100644 => 100755 UIAnimation.xcodeproj/project.xcworkspace/contents.xcworkspacedata mode change 100644 => 100755 UIAnimation.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist create mode 100644 UIAnimation.xcodeproj/project.xcworkspace/xcuserdata/paulaleite.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 UIAnimation.xcodeproj/xcuserdata/paulaleite.xcuserdatad/xcschemes/xcschememanagement.plist mode change 100644 => 100755 UIAnimation.xcodeproj/xcuserdata/phcacique.xcuserdatad/xcschemes/xcschememanagement.plist mode change 100644 => 100755 UIAnimation/AppDelegate.swift mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-AppStore.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad20.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad20@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad29.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad29@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad40.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad40@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad76.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad76@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad83@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone20@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone20@3x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone29@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone29@3x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone40@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone40@3x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone60@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone60@3x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon1.imageset/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon1.imageset/icon1.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon1.imageset/icon1@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon1.imageset/icon1@3x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon2.imageset/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon2.imageset/icon2@1x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon2.imageset/icon2@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon2.imageset/icon2@3x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon3.imageset/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon3.imageset/icon3.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon3.imageset/icon3@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon3.imageset/icon3@3x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon4.imageset/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon4.imageset/icon4@1x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon4.imageset/icon4@2x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/icon4.imageset/icon4@3x.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/rocket.imageset/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/rocket.imageset/rocket.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/rocket2.imageset/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/rocket2.imageset/rocket2.png mode change 100644 => 100755 UIAnimation/Assets.xcassets/world1.imageset/Contents.json mode change 100644 => 100755 UIAnimation/Assets.xcassets/world1.imageset/world1.png mode change 100644 => 100755 UIAnimation/Base.lproj/LaunchScreen.storyboard mode change 100644 => 100755 UIAnimation/Base.lproj/Main.storyboard create mode 100644 UIAnimation/BronzeViewController.swift create mode 100644 UIAnimation/GoldViewController.swift mode change 100644 => 100755 UIAnimation/Info.plist create mode 100644 UIAnimation/LoginViewController.swift create mode 100644 UIAnimation/SilverViewController.swift mode change 100644 => 100755 UIAnimation/ViewController.swift diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..cb8d7ab110dd5c875ceddb0f8925eac7cf48b540 GIT binary patch literal 6148 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 literal 0 HcmV?d00001 diff --git a/UIAnimation.xcodeproj/xcuserdata/paulaleite.xcuserdatad/xcschemes/xcschememanagement.plist b/UIAnimation.xcodeproj/xcuserdata/paulaleite.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..d7d0658 --- /dev/null +++ b/UIAnimation.xcodeproj/xcuserdata/paulaleite.xcuserdatad/xcschemes/xcschememanagement.plist @@ -0,0 +1,14 @@ + + + + + SchemeUserState + + UIAnimation.xcscheme_^#shared#^_ + + orderHint + 0 + + + + diff --git a/UIAnimation.xcodeproj/xcuserdata/phcacique.xcuserdatad/xcschemes/xcschememanagement.plist b/UIAnimation.xcodeproj/xcuserdata/phcacique.xcuserdatad/xcschemes/xcschememanagement.plist old mode 100644 new mode 100755 diff --git a/UIAnimation/AppDelegate.swift b/UIAnimation/AppDelegate.swift old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/Contents.json b/UIAnimation/Assets.xcassets/AppIcon.appiconset/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-AppStore.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-AppStore.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad20.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad20.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad20@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad20@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad29.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad29.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad29@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad29@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad40.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad40.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad40@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad40@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad76.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad76.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad76@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad76@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad83@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPad83@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone20@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone20@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone20@3x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone20@3x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone29@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone29@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone29@3x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone29@3x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone40@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone40@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone40@3x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone40@3x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone60@2x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone60@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone60@3x.png b/UIAnimation/Assets.xcassets/AppIcon.appiconset/icon-iPhone60@3x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/Contents.json b/UIAnimation/Assets.xcassets/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon1.imageset/Contents.json b/UIAnimation/Assets.xcassets/icon1.imageset/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon1.imageset/icon1.png b/UIAnimation/Assets.xcassets/icon1.imageset/icon1.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon1.imageset/icon1@2x.png b/UIAnimation/Assets.xcassets/icon1.imageset/icon1@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon1.imageset/icon1@3x.png b/UIAnimation/Assets.xcassets/icon1.imageset/icon1@3x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon2.imageset/Contents.json b/UIAnimation/Assets.xcassets/icon2.imageset/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon2.imageset/icon2@1x.png b/UIAnimation/Assets.xcassets/icon2.imageset/icon2@1x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon2.imageset/icon2@2x.png b/UIAnimation/Assets.xcassets/icon2.imageset/icon2@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon2.imageset/icon2@3x.png b/UIAnimation/Assets.xcassets/icon2.imageset/icon2@3x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon3.imageset/Contents.json b/UIAnimation/Assets.xcassets/icon3.imageset/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon3.imageset/icon3.png b/UIAnimation/Assets.xcassets/icon3.imageset/icon3.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon3.imageset/icon3@2x.png b/UIAnimation/Assets.xcassets/icon3.imageset/icon3@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon3.imageset/icon3@3x.png b/UIAnimation/Assets.xcassets/icon3.imageset/icon3@3x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon4.imageset/Contents.json b/UIAnimation/Assets.xcassets/icon4.imageset/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon4.imageset/icon4@1x.png b/UIAnimation/Assets.xcassets/icon4.imageset/icon4@1x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon4.imageset/icon4@2x.png b/UIAnimation/Assets.xcassets/icon4.imageset/icon4@2x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/icon4.imageset/icon4@3x.png b/UIAnimation/Assets.xcassets/icon4.imageset/icon4@3x.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/rocket.imageset/Contents.json b/UIAnimation/Assets.xcassets/rocket.imageset/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/rocket.imageset/rocket.png b/UIAnimation/Assets.xcassets/rocket.imageset/rocket.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/rocket2.imageset/Contents.json b/UIAnimation/Assets.xcassets/rocket2.imageset/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/rocket2.imageset/rocket2.png b/UIAnimation/Assets.xcassets/rocket2.imageset/rocket2.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/world1.imageset/Contents.json b/UIAnimation/Assets.xcassets/world1.imageset/Contents.json old mode 100644 new mode 100755 diff --git a/UIAnimation/Assets.xcassets/world1.imageset/world1.png b/UIAnimation/Assets.xcassets/world1.imageset/world1.png old mode 100644 new mode 100755 diff --git a/UIAnimation/Base.lproj/LaunchScreen.storyboard b/UIAnimation/Base.lproj/LaunchScreen.storyboard old mode 100644 new mode 100755 diff --git a/UIAnimation/Base.lproj/Main.storyboard b/UIAnimation/Base.lproj/Main.storyboard old mode 100644 new mode 100755 index c20059c..c3a279b --- a/UIAnimation/Base.lproj/Main.storyboard +++ b/UIAnimation/Base.lproj/Main.storyboard @@ -13,34 +13,154 @@ - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -49,6 +169,33 @@ + + + + + + + + + @@ -56,12 +203,12 @@ - + - + @@ -71,7 +218,7 @@ - + @@ -79,6 +226,10 @@ + + + + @@ -122,6 +273,7 @@ + diff --git a/UIAnimation/BronzeViewController.swift b/UIAnimation/BronzeViewController.swift new file mode 100644 index 0000000..4b8c625 --- /dev/null +++ b/UIAnimation/BronzeViewController.swift @@ -0,0 +1,98 @@ +// +// BronzeViewController.swift +// UIAnimation +// +// Created by Paula Leite on 27/05/19. +// Copyright © 2019 Pedro Cacique. All rights reserved. +// + +import UIKit + +class BronzeViewController: UIViewController { + + + @IBOutlet weak var rocketBronze: UIImageView! + @IBOutlet weak var worldBronze: UIImageView! + + let backgroudColors: [UIColor] = [#colorLiteral(red: 0.2631746531, green: 0.3594709039, blue: 0.4427573681, alpha: 1), #colorLiteral(red: 0.187418063, green: 0.2592587816, blue: 0.319437258, alpha: 1)] + + override func viewDidLoad() { + super.viewDidLoad() + + // Do any additional setup after loading the view. + } + + // Depois que aparecer + override func viewDidAppear(_ animated: Bool) { + + UIView.animate(withDuration: 5.0, delay: 0, options: [.curveEaseOut], animations: { + + // Alteracoes das coisas setadas anteriormente + self.rocketBronze.image = UIImage(named: "rocket.png") + self.rocketBronze.center.y = -self.rocketBronze.frame.height + self.rocketBronze.layer.zPosition = 100 + + }) + + let myPath = UIBezierPath() + //myPath.move(to: CGPoint(x: rocketBronze.center.y + rocketBronze.frame.height/2, y: rocketBronze.center.x)) + myPath.move(to: CGPoint(x: self.view.center.x, y: worldBronze.center.y)) + myPath.addLine(to: CGPoint(x: rocketBronze.center.x, y: worldBronze.center.y - rocketBronze.frame.height/2 - 900)) + + let myShapeLayer = CAShapeLayer() + myShapeLayer.strokeColor = #colorLiteral(red: 1, green: 1, blue: 1, alpha: 1) + myShapeLayer.lineWidth = 2 + myShapeLayer.path = myPath.cgPath + myShapeLayer.strokeStart = 0.8 + + let myEndAnimation = CABasicAnimation(keyPath: "strokeEnd") + myEndAnimation.fromValue = 0.2 + myEndAnimation.toValue = 1.0 + + let myStartAnimation = CABasicAnimation(keyPath: "strokeStart") + myStartAnimation.fromValue = 0.0 + myStartAnimation.toValue = 0.8 + + let animationGroup = CAAnimationGroup() + animationGroup.animations = [myStartAnimation, myEndAnimation] + animationGroup.duration = 3.5 + + myShapeLayer.add(animationGroup, forKey: "drawLine") + self.view.layer.addSublayer(myShapeLayer) + + } + + // Antes de aparecer + override func viewWillAppear(_ animated: Bool) { + + // bounds - conteudo dentro do frame + // frame - escala e posicionamento + // center - movimentacao na tela + + self.rocketBronze.center.x = self.view.center.x + self.rocketBronze.frame.size.height = self.view.frame.size.height * 0.3 + + self.worldBronze.frame.size.width = self.view.frame.size.width + self.worldBronze.center.x = self.view.center.x + self.worldBronze.center.y = self.view.frame.height + + + + } + + + @IBAction func segmentedColor(_ sender: UISegmentedControl) { + self.view.backgroundColor = backgroudColors[sender.selectedSegmentIndex] + } + + /* + // MARK: - Navigation + + // In a storyboard-based application, you will often want to do a little preparation before navigation + override func prepare(for segue: UIStoryboardSegue, sender: Any?) { + // Get the new view controller using segue.destination. + // Pass the selected object to the new view controller. + } + */ + +} diff --git a/UIAnimation/GoldViewController.swift b/UIAnimation/GoldViewController.swift new file mode 100644 index 0000000..ec511ac --- /dev/null +++ b/UIAnimation/GoldViewController.swift @@ -0,0 +1,30 @@ +// +// GoldViewController.swift +// UIAnimation +// +// Created by Paula Leite on 27/05/19. +// Copyright © 2019 Pedro Cacique. All rights reserved. +// + +import UIKit + +class GoldViewController: UICollectionViewDelegate { + + override func viewDidLoad() { + super.viewDidLoad() + + // Do any additional setup after loading the view. + } + + + /* + // MARK: - Navigation + + // In a storyboard-based application, you will often want to do a little preparation before navigation + override func prepare(for segue: UIStoryboardSegue, sender: Any?) { + // Get the new view controller using segue.destination. + // Pass the selected object to the new view controller. + } + */ + +} diff --git a/UIAnimation/Info.plist b/UIAnimation/Info.plist old mode 100644 new mode 100755 diff --git a/UIAnimation/LoginViewController.swift b/UIAnimation/LoginViewController.swift new file mode 100644 index 0000000..d041fab --- /dev/null +++ b/UIAnimation/LoginViewController.swift @@ -0,0 +1,33 @@ +// +// LoginViewController.swift +// UIAnimation +// +// Created by Paula Leite on 27/05/19. +// Copyright © 2019 Pedro Cacique. All rights reserved. +// + +import UIKit + +class LoginViewController: UIViewController { + + override func viewDidLoad() { + super.viewDidLoad() + + // Do any additional setup after loading the view. + } + + @IBAction func backButtonClicked(_ sender: Any) { + dismiss(animated: true, completion: nil) + } + + /* + // MARK: - Navigation + + // In a storyboard-based application, you will often want to do a little preparation before navigation + override func prepare(for segue: UIStoryboardSegue, sender: Any?) { + // Get the new view controller using segue.destination. + // Pass the selected object to the new view controller. + } + */ + +} diff --git a/UIAnimation/SilverViewController.swift b/UIAnimation/SilverViewController.swift new file mode 100644 index 0000000..c926ab1 --- /dev/null +++ b/UIAnimation/SilverViewController.swift @@ -0,0 +1,94 @@ +// +// SilverViewController.swift +// UIAnimation +// +// Created by Paula Leite on 27/05/19. +// Copyright © 2019 Pedro Cacique. All rights reserved. +// + +import UIKit + +class SilverViewController: UIViewController { + + + @IBOutlet weak var name: UILabel! + @IBOutlet weak var username: UITextField! + @IBOutlet weak var password: UITextField! + @IBOutlet weak var button: UIButton! + @IBOutlet weak var rocket: UIImageView! + @IBOutlet weak var world: UIImageView! + + override func viewDidLoad() { + super.viewDidLoad() + + // Do any additional setup after loading the view. + } + + override func viewDidAppear(_ animated: Bool) { + + + + UIView.animate(withDuration: 0.5) { + self.name.center.x += self.view.bounds.width + self.username.center.x += self.view.bounds.width + self.password.center.x += self.view.bounds.width + } + + + } + + // Antes de aparecer + override func viewWillAppear(_ animated: Bool) { + + // bounds - conteudo dentro do frame + // frame - escala e posicionamento + // center - movimentacao na tela + + self.rocket.center.x = self.view.center.x + self.rocket.frame.size.height = self.view.frame.size.height * 0.3 + + self.world.frame.size.width = self.view.frame.size.width + self.world.center.x = self.view.center.x + self.world.center.y = self.view.frame.height + + name.center.x -= view.bounds.width + username.center.x -= view.bounds.width + password.center.x -= view.bounds.width + + } + + @IBAction func login() { + UIView.animate(withDuration: 4.0, delay: 0, options: [.curveEaseOut], animations: { + + // Alteracoes das coisas setadas anteriormente + self.rocket.image = UIImage(named: "rocket.png") + self.rocket.center.y = -self.rocket.frame.height + + }, completion: { finished in + self.performSegue(withIdentifier: "loginText", sender: self) + }) + + UIView.animate(withDuration: 0.5) { + self.name.center.x += self.view.bounds.width + self.username.center.x += self.view.bounds.width + self.password.center.x += self.view.bounds.width + self.button.center.x += self.view.bounds.width + } + + } + + + + + + /* + // MARK: - Navigation + + // In a storyboard-based application, you will often want to do a little preparation before navigation + override func prepare(for segue: UIStoryboardSegue, sender: Any?) { + // Get the new view controller using segue.destination. + // Pass the selected object to the new view controller. + } + */ + +} diff --git a/UIAnimation/ViewController.swift b/UIAnimation/ViewController.swift old mode 100644 new mode 100755 index 9804cbb..353a92a --- a/UIAnimation/ViewController.swift +++ b/UIAnimation/ViewController.swift @@ -8,11 +8,64 @@ import UIKit -class ViewController: UIViewController { +class ViewController: + UIViewController { + + @IBOutlet weak var world: UIImageView! + + @IBOutlet weak var rocket: UIImageView! + override func viewDidLoad() { super.viewDidLoad() + + + } + + // Depois que aparecer + override func viewDidAppear(_ animated: Bool) { + +// let circlePath = UIBezierPath(arcCenter: self.world.center, radius: self.world.frame.width, startAngle: 0, endAngle: .pi*2, clockwise: false) +// +// let animation = CAKeyframeAnimation(keyPath: #keyPath(CALayer.position)) +// +// animation.duration = 5 +// animation.repeatCount = MAXFLOAT +// animation.path = circlePath.cgPath +// +// self.rocket.layer.add(animation, forKey: nil) + + // options: .repeat, .autoreverse + // options: .curveEasyIn, .curveEaseOut, .curveEaseInOut + + UIView.animate(withDuration: 5.0, delay: 0, options: [.curveEaseOut], animations: { + + // Alteracoes das coisas setadas anteriormente + self.rocket.center.y = self.world.center.y - self.world.frame.size.height/2 + // self.rocket.transform = self.rocket.transform.rotated(by: CGFloat(Double.pi)) + + }, completion: { finished in + self.rocket.image = UIImage(named: "rocket2.png") + }) + } + + // Antes de aparecer + override func viewWillAppear(_ animated: Bool) { + + // bounds - conteudo dentro do frame + // frame - escala e posicionamento + // center - movimentacao na tela + + self.rocket.center.x = self.view.center.x + self.rocket.frame.size.height = self.view.frame.size.height * 0.3 + + self.world.frame.size.width = self.view.frame.size.width + self.world.center.x = self.view.center.x + self.world.center.y = self.view.frame.height + + + } From c3e4cfb53e02d19989580a88b1d4d327e3166432 Mon Sep 17 00:00:00 2001 From: Paula Leite Date: Mon, 27 May 2019 17:51:23 -0300 Subject: [PATCH 2/2] Gold Mudado --- UIAnimation.xcodeproj/project.pbxproj | 4 --- .../UserInterfaceState.xcuserstate | Bin 29083 -> 31410 bytes UIAnimation/GoldViewController.swift | 30 ------------------ 3 files changed, 34 deletions(-) delete mode 100644 UIAnimation/GoldViewController.swift diff --git a/UIAnimation.xcodeproj/project.pbxproj b/UIAnimation.xcodeproj/project.pbxproj index f58f58c..37f8343 100755 --- a/UIAnimation.xcodeproj/project.pbxproj +++ b/UIAnimation.xcodeproj/project.pbxproj @@ -10,7 +10,6 @@ 1EF3C977229C59ED005A5B40 /* BronzeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF3C976229C59ED005A5B40 /* BronzeViewController.swift */; }; 1EF3C979229C7663005A5B40 /* SilverViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF3C978229C7663005A5B40 /* SilverViewController.swift */; }; 1EF3C97B229C7FD4005A5B40 /* LoginViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF3C97A229C7FD4005A5B40 /* LoginViewController.swift */; }; - 1EF3C97D229C826C005A5B40 /* GoldViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1EF3C97C229C826C005A5B40 /* GoldViewController.swift */; }; 778CE9D2229BF77300F5483E /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 778CE9D1229BF77300F5483E /* AppDelegate.swift */; }; 778CE9D4229BF77300F5483E /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 778CE9D3229BF77300F5483E /* ViewController.swift */; }; 778CE9D7229BF77300F5483E /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 778CE9D5229BF77300F5483E /* Main.storyboard */; }; @@ -22,7 +21,6 @@ 1EF3C976229C59ED005A5B40 /* BronzeViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BronzeViewController.swift; sourceTree = ""; }; 1EF3C978229C7663005A5B40 /* SilverViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SilverViewController.swift; sourceTree = ""; }; 1EF3C97A229C7FD4005A5B40 /* LoginViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LoginViewController.swift; sourceTree = ""; }; - 1EF3C97C229C826C005A5B40 /* GoldViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GoldViewController.swift; sourceTree = ""; }; 778CE9CE229BF77300F5483E /* UIAnimation.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = UIAnimation.app; sourceTree = BUILT_PRODUCTS_DIR; }; 778CE9D1229BF77300F5483E /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 778CE9D3229BF77300F5483E /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; @@ -67,7 +65,6 @@ 1EF3C976229C59ED005A5B40 /* BronzeViewController.swift */, 1EF3C978229C7663005A5B40 /* SilverViewController.swift */, 1EF3C97A229C7FD4005A5B40 /* LoginViewController.swift */, - 1EF3C97C229C826C005A5B40 /* GoldViewController.swift */, 778CE9D5229BF77300F5483E /* Main.storyboard */, 778CE9D8229BF77600F5483E /* Assets.xcassets */, 778CE9DA229BF77600F5483E /* LaunchScreen.storyboard */, @@ -149,7 +146,6 @@ files = ( 1EF3C977229C59ED005A5B40 /* BronzeViewController.swift in Sources */, 1EF3C979229C7663005A5B40 /* SilverViewController.swift in Sources */, - 1EF3C97D229C826C005A5B40 /* GoldViewController.swift in Sources */, 778CE9D4229BF77300F5483E /* ViewController.swift in Sources */, 1EF3C97B229C7FD4005A5B40 /* LoginViewController.swift in Sources */, 778CE9D2229BF77300F5483E /* AppDelegate.swift in Sources */, diff --git a/UIAnimation.xcodeproj/project.xcworkspace/xcuserdata/paulaleite.xcuserdatad/UserInterfaceState.xcuserstate b/UIAnimation.xcodeproj/project.xcworkspace/xcuserdata/paulaleite.xcuserdatad/UserInterfaceState.xcuserstate index bd5f51d5b068eda07b8d5a8eb07e3a94f9a2fa03..b824a2985b8a58ae7a99bd76b8df00ba977bc4a1 100644 GIT binary patch delta 15236 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%0A!^OdhxTQ=z0abhH1A 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

TZD zTq5*K!3l5@oC2r88E_Vy1Lwg7a1nirzC#nyB;-Pq(G)ZleUGLs#ca3&uHwaQ0XM)+ z@CUdBZewXpM`v)$G7dy=K*fQ04p=yl#uG%G*Q;Vsc1iaEJ$sh8?VLj#gr`2xWB7Q= zIP$76eF`g!U4IK?t{s9n7wZ+}8X{0>JC_v>sTff8k$C}60oFRz;2D}x4PKy`yjJmw zv4S_?E&uo*G^-jCXf`snZC+Sf{!X-zf&wfkNJ9p)Xbzf-=FNv*gawLFHC~LTu%PM* z3)@0}psj`hs0M2Yk0FLqsK90v20fVjDZP6KrJ-ESQrQ6(Q>o`twgJ8VIqu&W|)jtqg7}P zT90uY6jepQOrV|j0Yetd#zTX4w6+@Npmn&-l(6tdrJs-oHi50Na)(V}GuRxqfGuGw zv;qBqHlj^vGupBcwt;!DEo=wdV{UIn+t7Bj7yX3i&E%RJHpW%tlca>*fp#G*g2k`| z_JBQMFSG;gM7z*#^ds7X@?D#J8ppxUV5P^TXfls@0DPp1;XpVDguo$$1sy^Au^Rpv z$y_d9a}*qb)i4|hoe)6|9YDXL-_W7=Y8ZauR*S#5)#8zW(C%*C3dixv86D(xF?Kfi z*^KUwJ*6StD=<^uX;kb^@CrEkBP9zbxgQ!P1b@H;w+ z2#44)$(G}aNDJ|DYaBQS&UGPi5M2Z3VYP$rTt@=ru0VfF6IhEISO9|IA~+o@?C9== z{Y$#w@5+)g?7R#tK?FL9e)qJp6fVP-t6iIBHE=00%dOYo3Z7jn(P=Ep`{5FOTzuk) z5p_IU3pZdD1lM6+pG7lj;16&kI)~2V>6s7|;)L7aPQG|M=Jy3Os|N0ZyU|4s(8$!u z#ybk-g;jO_7yJnx_!rlI!CXIxF7fM=M6n(?hp{zdJ7(d=l+xI^*?6&d3XU{ zgqPrDcm-ZXSI|}TfCB`2%mEyALJT-LINW#>-r@QF2fPJu!#~kAbRFG5H*4Wv@GeGj z5B-7e;Q9Fr^SwIv>qz*Nm&`MC3*~#Dz2xcg3cltqbQ}HYzVcnMa!CkDkt`8VL((LJ z?xMeINCD}E?xFj*DTh3yBkAj2I{swbN4z8h$Uv;-gE24vK@Tx62_$oOL z|4S^86_U`vfbznDr9FAqrg2qCUq^Xi-xA&}4j>cAB)quEMD)6vG^028b#G~`*uzya zjpr(Qi;lXQON)XW;=pDVJxj~mmzE5&SCm&(V&hp->AI8{>-<1XGR;lHx1RAe#B)qG z;sAxZImFUo!%X!fOe5+?3`;gA)Q^abPc*$}AlZy;^}nG{Xd!W3313`vV`nGtb%z0B`bLbkpnp3!&8XE?jR0DT=R3sImzKXun`>aeMch_@w3a3 zqxg#hejE^cK2g5dN9_G>>5=2e@g72bjqY*)Q%gWjK=(Khh++$hD~bm6#ol4FlJcHa zz5L;?AG69uPWEU!4uo*PDfK8kkKm^R?R;_uIg^~lfglcGpuz8XMXYmcwj^G&{THD; z&MCQw*JB)z{~wBsT+Wk&1EC%*mOsgsAD=%EQzN^yxLHMEvB7xkBUUWuS%F{np!2l=kf9zU$n~ZMfamT`a}sKCfR{sk_AO3Gm@=U3Uk`dcX7i{YD-l z50ghY5Xk`?L>oB}#Ro|im`G@`p^{-E$-6GqN~iNYd68c<7dU`pObaf;ZiYWz68$U6 z-bGG)$8{ZCBX8ih-ToVSlLOJn@PEB3ayy|VpI}iS zEOC>Qcg4Ov{jn=Xz98THtI`faOA%Oje5E*d9rSS>ilUf0U=+&%9F@9(Q9=xi5>eh9 zNaR5Bdtj6w73l6G^drZTlHg7-!;<(;%vcM~RE21%P)hl~Xs8H6Md7JTL0Gt{_{B3S zbtn}{89esh!%WbSfE%^O+J=XCDq?! zp*YZ*15H1&QPg0p#i$|FP-+-8oCD1`(3}Gpb*uN{g4j-_*BPq+QYan^MUA1p`qV;E z2VcV}llHIC8!2bK1y za-EFs1f{{Q2s$(Uu0T_wRjtwLI%|u{ z3j6oxEpz4=8|PYJ%B01} z9|gE>o6=jUHA!aNN{7<&;)+4!Fd`nkYQ4W;VlUj(BN%} zNSp_03<^Lu&>a-x{e@{@Hdu`J6Lx_;cn{$i4k1s0GmwDZFc3#Pt#QQB4tBtaeiw93 z!%p*3oXlSbH^7bXFg%XE$LsJBcH{Ke1xh1ZkzL3lvNzcuC*dcN3vjmmXYwe{tN%&< zh4t}$@&Wmfd`v#U`Slm%EAkEbmI4&%R;C05o^PV?-S@jM3i}uBJbYc~q!#7B&z59k zhRvrIQj3XM?Qw1q|9WRBsHN0;LcfGsMlGjSP%Eib)M{!CwU%1P0qpN|ojOV#qwud{4)o%{j~qD00UQoE z#PwaKkT6&8!~oZ##8hB#|C*lY9aA@kv($OKim7uPD5<8fh3tv_st=9;b=Bht^l)V) z?Q-6rZhEwTUFF-<1MJ69f5NNOU({XdZ?crS&w*0x*mIx{2l{fLf&&T;e71;sNIjw+ zQ%|U;)HCWi2l`_Vhy&v|@I42rIk18QKYZHp8&Ai*9pWWDa27K)CML#pFTEz{12!6Z zUMYJQllk-t{kW9%l$JZh?fHnUyEWkBQg2Ubzjt*HTSEgsYT4gYTIu@CRvaUt<=Ee# zrF0N2qw!o-aRB?11356LmJZ?FOB#=Gu*ba|&MU{vkI3!y)gSOWJ_dGHs-z z_=^KWIWWxgiJeQaIP#r9=~x;E{y18p<9X+D1a>azB;L6k`ETda@2k2>7TU@KOrz83 z3_6noh*JQL1EVoBh2Q&7aoLT>JT>N5n}T&x(;DW9$_my9DH%$OWs??9~hsi zuA>fgXAingJi4(T1yldy`PNnFMwjr&3hC~25sj(&6$ifNz<3UPBdeu*&^_s1G$zXg z4ou>JivyGEu=V4yea3-r>#$Yv*apx8`HKVJabTk76Qk3J1sbc`vxvoYJ0i4`9_4|` z@ldDmg8YIP?6$bRI-xQE`$UmRG> zfhC?#EXHVY-R1}VD}Bg=@HZaeG9KX(9^rEA1cHH_VE#MYsvGrv`jH37LmtQmo^St0s8v_v z1^o|?>?Qq*eoepO02az74s6B|)s|ZNEknRp3|38BIj{rW=DNUfo<=g zF+La?<4X_ZFAi*X(~bYca9@_dj+lvlyTiytbGzYa}W-{}!(PU;Zvza-}TxK3q&EVyHnFCii zaFqksIB=Z8#wTq19*l0!-2Q>ckH^UO=ZBqJZ5mZ zem?VrdCENFAmAY6AUU6T!MtQ%aggGml7oJD&?lPpZ2>^Q0v56)OR+S|aFFJpHwVQW z4CJ8feHhGou|Bv-R>+E2T#VmiIVhOV`m%m3e%FhGLJlYPO|I{nFN&12IDh}|cf(mF z-@Ok9eLdY5w2(*Y*{J_`mm%2tYy+%dIOxye%>k2ZP77If9E;O-|8CdJCbKCVlyFeW z!60PPWZw7amLeiT2Z;!Gq{C)VwJrUF#;m*7f(5d%VjPgLNL~<~m)jz*ZOP!O23h86Ezt?SO^=F_n9Q)x`d=@Ahp95-%H}vxGW?m=I1?1zsxkH4F|$X5qs1X9K=o~_Ka}Lkyt-{@LAcBZdC*I z>(=z@0AwE(eC{bQIQ&6d*M?pW*I{djt3l~#_xG=*X)?TB(ju>E$&iv_TV+u%yfabx zJ3EFQ>zdFz$cfJv&7>CNz-B8xR`fG~Z#)Kq^QOG!pa@3=n)F_);)d@ReY^V1nQ~!6ZSoV7_31V3A;n zV3}ZrV3lBvV3**M;Hg)LSB_T)uP?pkc+K@%?zPHmjn{gwAG|hs{o?dG<#pEUyw@eK zD_+;U?s>fy0wF1+g+igX&{rrHh6xoyy)agoDr_a}AS@R46%G^*6OI*rE&N9Kop6$H zvaniMD_kgCB3ve1A>1O|F5D^nQMgyQPk2mtQg~W;PIy6hN%&I4ig21j zDv?^G6~&5DMb0!)hR7<)5;YYy7qt|%7UhZBi9Qoe63rFWh-yWPL`y`=M4LpLMO#GM zM8`!}M1PC!iyn#|i=K*}i(Y!O-d^4~{o(EB?e87vE%i2eH}Nj^c6!hCuJ&H(z1e%K z_jd1{-n+f`cpvgU;(gTnxc5o#)81#jANqv&wD76$nd0=B<1^o9fzKkJB|aN`_WS(q zbJ6F9&mEt~KF@q!_`LEJ`)YjSd~$})@jqf_&4Za(FH~Vh& z-S2zM_l)m3-wVE%{AfScPwW@tm*AJ@*UhiHU$I{gzY4$Mek1*m-zdLt{U-Xk{HFMA z^xNgP-|siSlYY)iVxibioGP}9+lV`fdx%GhzZTbsYsCx2i^WUD%f&0jtHo=@>%~8a zH;E66e-|GUpAerCpAnxEUl3msUlCsu-w^-d5B$UY6a4f1yZaCH|H^-k{}%tl{-^!V z_@DE??teP~1PB8}0X_ji0h$1PfFYn>K!bpofV_aN0j17>J^_6LDgr(W=pQg3U{Jv7 zfIk9Nfo%hwfeQlH25t=89Jn=bSKyCKC7UH%-Fk7KWWVGW$wA2>$tlTo z$sLLFE>@5aB+n%;C9fs_NC|16G|a6eqouLZcxfV5mEEKRq=TeGq{E~mq)sU({aiX) zIz~E9I!8KBS|hEME|e~oE|ad5u92>nZj^489+cjYz77%wseM|i=bCQZ)B8=kqKl%nYS!i)=Jh( z_L;0oHc&QLHd;1WHdQuFHbXW`Hb*v3RwG*@TPNEf+bG*C+bY{G+bP>EJ0v?RdlKvw ztP8dWw+tR0JT7=r@Z{jB!PA0g1kVp%5WFaON$|4Z6~PCBFUU!Gm|Q2<%MEg8qC8oi zDo>YZ%5Cy|c@KGiIg*c(eay#1YafWI)KEkRc(%LPmr*L%5L7Lneew52+1V6|yDdr;wu|$3l*WoD8`X@;Kya z$n%hwA+JOJ2{nbLgl2_ihvtSha)veuZ5G-ov`c7ys3UZ6=;+Wfq2ofo4xJskG<13B z%FxxJ+e3GT?hf4(dN}la=&jI)p^rnKhCUDL999%IBy42ZlR=&B| zrJSPtUO8PkQ(3EApaP?Vr9hYh_xzbpvtJ~r0SvSrRuFJ zQw>lJRt-~)P)$+QsFtXfsaB{~seVvxR&7=7Q0-D3P#shqR{gHJsJg4Vr+T1zq+1n z^$qnc^&RzHr~0Y-tp;jnjX)#P_-Onz{+e)&Mx)ahGz~N{nmA2@#;(cLbkP)O3N=NV z5=~D{Kg}S`P|XMp(u~r4tC^^AX{KmuG_{(An#Gz8noXK5nr)i>niHDSnzNeo+B9tw zZ3k^9Z5M5Uwx_nYwy(BAJ68LZ_IvF-?R>3sp>~OOxpsqglXk0ihjzDikM^MUr1pyT zg^tnr=>l|8U9c`xr`73o23?e{zAjqVOjoKKuUnv7tJ|R4q}!_7uG^_Qrn{`Wrn{lL zrMsiMt9z<@rTa$@^rT*_m+9sDP`yI0)ko@$`uh54y;+~FZ>n#uZ>evs@95Nb(dX;C z>AUOu=m+bE=|||1{&W3k{RF*BKUF_nKU2S0ze>MGzfQkFzfHeWzgxdozfXTee@1^( ze^-A`|3Lpp|5E=(|27gvQjtNC%EO_8?9_L2P}zmA*`IWcl_t&Z5NR+O%!X7$y1{D5GPE?bHsl%F8M+&a4LuCK z3}~ApG*%dg8%G+Eag^~}<3yv& zIK^0FTx48gTxMKtTx;B5+-TfmJYqa%JYhU-JZn5}yluQ=ylcE?d>*Baii~O<)j0}9 zjgDFtwLWTF%+i<@F+arYjrld^Xw0RUhcQoLp2xh3`NsrIl!-M7O+KawliH*+8BFy| z(WY2ag2`z%rJB-Ad8U4*5vIwepG{{>Ph$nKnpjh;B{n107MmTL8{0UxZET0w&awHi z-C~PkOJXO-9*TVt$HaNXdB^$11;k0>RB@U(U7R8Aa@^gxzvJ%3J&5}!-X~rh9~d7L zFOLt4SH`R3W8)Lz&GD)6>G9Thdwgzuqxg359h~u<;=3jY5~K;T1bISO!pMZL6TV6K zHepi2orLEJFB4uTyiF`jEKls0SeZB=@%O}wiGL*inRqwxe&VCV*NJbFKoXh6Bngsq zNllX~k|rd5pEM(BcGBFW#Ytzq&-PTl1?O@N;;c#Dd|em^`x6g zPm-RSX|vPU>~EHsW#$mG#;i9R%u(hB<`{D`bESEzd4qX}dAE75d7t^P`Ly|*`GWbf z`KtN4`KI}i`MLR}`AsrRrjnUtL9#4ao7^DTlpLR&l$?^Bm7J5@D7k5Ji{w_xeUn|u z8Qi4)6DTb7&lm;nrDG4d&l$4Z4 zDNR#4rWB?Wr}RweozgdDV9Jn`VJRb0P|B#3xhX%T+)fpw`lm`#WvTL1b!xrT2B|Tr zv8nN?iK$ts4O1JZHcM@tnwQ!>wPR|})ZVFsQc>#Xsb8j!OC6s&C3RZrjMQ1Fb5pBR zcceP6TLhL!i^&piNwOqcY?daL=9X5LJWG2^M@wf*S4*j-+|tj|-!j-T)H1^2v`nx} zw9K(AvMjZ%u&lPMvuv~MwCuL*vFx+#x7y(WEG`lj^l={wVZO#eCkK>ES-L+KaN zFQ?y4zn}gn{b~A(^j8^z3}J?MhF?avjJ_FF8G|y0W{k-AB4bR(R~g@Ae4DW&<8Ee9 zrZQ8V>C|OLW+rE5W#(iy%50k1BC|tgab{^|S!P9MRpy|~A(_K6M`e!7oRhgI^XJS% znSWa;tK6!$Mp_NlD683;YE83dTC=R#*4Ea})~?n9Yd33mYaeT0YlXGaI>0)}`h|6j zb)0p)b%OOf>ul>%>vHQ#>uT#->w4=C);-pJPU`{dLF-}bQR{K*N$Vw>&=zQmu&HfY zo8D%yMcL}xqHPvinl0UyX=`L_XX|L|Vk@u}+KO!bY?Zbu+aTK^+d12xw!60bwnw(7 zwimY7wzpZnS^im)ELm1amLe-6OOvI`%FJq-RghJd<;}B@B_R;pK z_UZOn_PO>N`vUu7`!f4V`%e3h_PzFf_5=2V_QUq0_T%=G_RID=*;ICDwkbO&J3o71 z_W11IvX5t<%f6ZYDEnphn;asCbmj(-{rV+rshn~nUym) zr#fe4&W4;#Ia_mfwVoa;N4_ z&z+S!CwEcqlH66f+j95h?#n%pdocG{?#bLUx#x2)=3dFYoBOgMXh=0=8wwlxH*`uG z${L0=3~Q)sSifOn{;vEz`A70Ej YuH6f}_w*!eAoP5*<2>JWpWRFUACL5KX8-^I diff --git a/UIAnimation/GoldViewController.swift b/UIAnimation/GoldViewController.swift deleted file mode 100644 index ec511ac..0000000 --- a/UIAnimation/GoldViewController.swift +++ /dev/null @@ -1,30 +0,0 @@ -// -// GoldViewController.swift -// UIAnimation -// -// Created by Paula Leite on 27/05/19. -// Copyright © 2019 Pedro Cacique. All rights reserved. -// - -import UIKit - -class GoldViewController: UICollectionViewDelegate { - - override func viewDidLoad() { - super.viewDidLoad() - - // Do any additional setup after loading the view. - } - - - /* - // MARK: - Navigation - - // In a storyboard-based application, you will often want to do a little preparation before navigation - override func prepare(for segue: UIStoryboardSegue, sender: Any?) { - // Get the new view controller using segue.destination. - // Pass the selected object to the new view controller. - } - */ - -}