From 7d114072abfdd23da4d394d788ffc2dbc8bb3088 Mon Sep 17 00:00:00 2001 From: Mariana Lima Date: Tue, 28 May 2019 18:36:34 -0300 Subject: [PATCH 1/2] Adicionado desafio bronze e parte do prata --- .DS_Store | Bin 0 -> 6148 bytes UIAnimation.xcodeproj/project.pbxproj | 8 ++ .../contents.xcworkspacedata | 0 .../xcshareddata/IDEWorkspaceChecks.plist | 0 .../UserInterfaceState.xcuserstate | Bin 0 -> 30153 bytes .../xcdebugger/Breakpoints_v2.xcbkptlist | 23 +++++ .../xcschemes/xcschememanagement.plist | 14 +++ .../xcschemes/xcschememanagement.plist | 0 UIAnimation/ViewControllerBronze.swift | 97 ++++++++++++++++++ UIAnimation/ViewControllerPrata.swift | 16 +++ 10 files changed, 158 insertions(+) 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/marianalima.xcuserdatad/UserInterfaceState.xcuserstate create mode 100644 UIAnimation.xcodeproj/xcuserdata/marianalima.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist create mode 100644 UIAnimation.xcodeproj/xcuserdata/marianalima.xcuserdatad/xcschemes/xcschememanagement.plist mode change 100644 => 100755 UIAnimation.xcodeproj/xcuserdata/phcacique.xcuserdatad/xcschemes/xcschememanagement.plist create mode 100644 UIAnimation/ViewControllerBronze.swift create mode 100644 UIAnimation/ViewControllerPrata.swift diff --git a/.DS_Store b/.DS_Store new file mode 100644 index 0000000000000000000000000000000000000000..202613ac99b2315d9cb3043b88d2642e5dc703ae GIT binary patch literal 6148 zcmeHKJ5B>J5PgOeE77DuQ2GQ&xq%ZcMH-rj9+Dsk%4SyxB+BhL3oSR`K9n4QH!}_& zvCTFpLNk)*O~#(F{Z{eV0K(*9IRb_N3O2zYMu&*IvuiI8-X{jlu|kDQ++&5hBhfCp zWbKDI#}s31xbCm@Z*YP~EVz>;uF&9)*6sRwG+WeFV_SKd_KU9SvYfB$Iirf_qo?<` zv)6II49(5A`Gb5l7iYj3a0Z+KXP_qotl1*PfuU<>z!`7`J{genA+iakjIE&_9aQ=R zAP(qOp{=)4ViX54Wo!-Up#%#hT4=~mj9}sP$2=}&Yz-|OL1$*3JoEPPvb__BsKXJG zp=)Qr8TiS7ynQJ{ssE?^D|J5db%-lxz!~_j41_^BD<|AtuC2fJDYZ7TU9gGBxK<1b oZ7sz_EyesH=g6^kT7MLq{V8K>C|Sg>;Y7a(C?T$#fj?m21ET&kWdHyG literal 0 HcmV?d00001 diff --git a/UIAnimation.xcodeproj/project.pbxproj b/UIAnimation.xcodeproj/project.pbxproj old mode 100644 new mode 100755 index aebf720..57d4a87 --- a/UIAnimation.xcodeproj/project.pbxproj +++ b/UIAnimation.xcodeproj/project.pbxproj @@ -12,6 +12,8 @@ 778CE9D7229BF77300F5483E /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 778CE9D5229BF77300F5483E /* Main.storyboard */; }; 778CE9D9229BF77600F5483E /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 778CE9D8229BF77600F5483E /* Assets.xcassets */; }; 778CE9DC229BF77600F5483E /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 778CE9DA229BF77600F5483E /* LaunchScreen.storyboard */; }; + 87C3DA92229C763600C4407B /* ViewControllerBronze.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87C3DA91229C763600C4407B /* ViewControllerBronze.swift */; }; + 87C3DA96229DD9E800C4407B /* ViewControllerPrata.swift in Sources */ = {isa = PBXBuildFile; fileRef = 87C3DA95229DD9E800C4407B /* ViewControllerPrata.swift */; }; /* End PBXBuildFile section */ /* Begin PBXFileReference section */ @@ -22,6 +24,8 @@ 778CE9D8229BF77600F5483E /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 778CE9DB229BF77600F5483E /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 778CE9DD229BF77600F5483E /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 87C3DA91229C763600C4407B /* ViewControllerBronze.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewControllerBronze.swift; sourceTree = ""; }; + 87C3DA95229DD9E800C4407B /* ViewControllerPrata.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewControllerPrata.swift; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -56,7 +60,9 @@ children = ( 778CE9D1229BF77300F5483E /* AppDelegate.swift */, 778CE9D3229BF77300F5483E /* ViewController.swift */, + 87C3DA91229C763600C4407B /* ViewControllerBronze.swift */, 778CE9D5229BF77300F5483E /* Main.storyboard */, + 87C3DA95229DD9E800C4407B /* ViewControllerPrata.swift */, 778CE9D8229BF77600F5483E /* Assets.xcassets */, 778CE9DA229BF77600F5483E /* LaunchScreen.storyboard */, 778CE9DD229BF77600F5483E /* Info.plist */, @@ -136,7 +142,9 @@ buildActionMask = 2147483647; files = ( 778CE9D4229BF77300F5483E /* ViewController.swift in Sources */, + 87C3DA92229C763600C4407B /* ViewControllerBronze.swift in Sources */, 778CE9D2229BF77300F5483E /* AppDelegate.swift in Sources */, + 87C3DA96229DD9E800C4407B /* ViewControllerPrata.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; diff --git a/UIAnimation.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/UIAnimation.xcodeproj/project.xcworkspace/contents.xcworkspacedata old mode 100644 new mode 100755 diff --git a/UIAnimation.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/UIAnimation.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist old mode 100644 new mode 100755 diff --git a/UIAnimation.xcodeproj/project.xcworkspace/xcuserdata/marianalima.xcuserdatad/UserInterfaceState.xcuserstate b/UIAnimation.xcodeproj/project.xcworkspace/xcuserdata/marianalima.xcuserdatad/UserInterfaceState.xcuserstate new file mode 100644 index 0000000000000000000000000000000000000000..be89ef5c51f20c13c834806ca07d93f7494bd671 GIT binary patch literal 30153 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 literal 0 HcmV?d00001 diff --git a/UIAnimation.xcodeproj/xcuserdata/marianalima.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist b/UIAnimation.xcodeproj/xcuserdata/marianalima.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist new file mode 100644 index 0000000..10d92a6 --- /dev/null +++ b/UIAnimation.xcodeproj/xcuserdata/marianalima.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist @@ -0,0 +1,23 @@ + + + + + + + + + diff --git a/UIAnimation.xcodeproj/xcuserdata/marianalima.xcuserdatad/xcschemes/xcschememanagement.plist b/UIAnimation.xcodeproj/xcuserdata/marianalima.xcuserdatad/xcschemes/xcschememanagement.plist new file mode 100644 index 0000000..d7d0658 --- /dev/null +++ b/UIAnimation.xcodeproj/xcuserdata/marianalima.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/ViewControllerBronze.swift b/UIAnimation/ViewControllerBronze.swift new file mode 100644 index 0000000..29c41ea --- /dev/null +++ b/UIAnimation/ViewControllerBronze.swift @@ -0,0 +1,97 @@ +// +// ViewControllerBronze.swift +// UIAnimation +// +// Created by Mariana Lima on 27/05/19. +// Copyright © 2019 Pedro Cacique. All rights reserved. +// + +import UIKit + +class ViewControllerBronze: UIViewController{ + @IBOutlet weak var rocket: UIImageView! + @IBOutlet weak var world: UIImageView! + @IBOutlet var fundo: UIView! + @IBOutlet weak var segmentedControl: UISegmentedControl! + @IBAction func funcaoDoBotao(_ sender: Any) { + switch segmentedControl.selectedSegmentIndex { + case 0: + fundo.backgroundColor = #colorLiteral(red: 0.3321701288, green: 0.3321786821, blue: 0.3321741223, alpha: 1) + default: + fundo.backgroundColor = #colorLiteral(red: 0, green: 0, blue: 0, alpha: 1) + } + + } + override func viewDidLoad() { + super.viewDidLoad() + + } + override func viewDidAppear(_ animated: Bool) { + + let myPath = UIBezierPath() + myPath.move(to: CGPoint(x: self.rocket.center.x, y: self.view.frame.height)) + myPath.addLine(to: CGPoint(x: self.view.frame.width/2, y: self.rocket.frame.height/1.25)) + + let myShapeLayer = CAShapeLayer() + myShapeLayer.strokeColor = UIColor.white.cgColor + myShapeLayer.lineWidth = 200 + myShapeLayer.path = myPath.cgPath + myShapeLayer.strokeStart = 1 + myShapeLayer.zPosition = -1 + myShapeLayer.lineWidth = 2 + + view.layer.addSublayer(myShapeLayer) + + let myEndAnimation = CABasicAnimation(keyPath: "strokeEnd") + myEndAnimation.fromValue = 0.2 + myEndAnimation.toValue = 1.0 + + let myStartAnimation = CABasicAnimation(keyPath: "strokeStart") + myStartAnimation.fromValue = 0.2 + myStartAnimation.toValue = 0.5 + + let animationGroup = CAAnimationGroup() + animationGroup.animations = [myStartAnimation, myEndAnimation] + animationGroup.duration = 2 + + + myShapeLayer.add(animationGroup, forKey: "drawLine") + view.layer.addSublayer(myShapeLayer) + + UIView.animate(withDuration: 2.0, delay: 0, options: [], animations: { + self.world.frame.size.width = self.view.frame.width + self.world.center.y = self.view.frame.height + self.rocket.frame.size.height = self.view.frame.height * 0.15 + self.rocket.center.x = self.view.center.x + self.rocket.center.y = self.rocket.frame.height +// self.rocket.transform = self.rocket.transform.scaledBy(x: 2, y: 2) +// + }, completion: { finished in + self.rocket.image = UIImage(named: "rocket2.png" ) + self.outraAnimacao () + + }) + + + } + func outraAnimacao() { UIView.animate(withDuration: 2.0, delay: 0, options: [], animations: { + self.world.frame.size.width = self.view.frame.width + self.world.center.y = self.view.frame.height + self.rocket.frame.size.height = self.view.frame.height + self.rocket.center.x = self.world.center.x + self.rocket.center.y = self.rocket.frame.height-200 + + + + + }) + + } + + + override func viewWillAppear(_ animated: Bool) { + self.rocket.center.y = self.view.frame.height - + self.world.frame.height/2 + + } +} diff --git a/UIAnimation/ViewControllerPrata.swift b/UIAnimation/ViewControllerPrata.swift new file mode 100644 index 0000000..4a9d1bf --- /dev/null +++ b/UIAnimation/ViewControllerPrata.swift @@ -0,0 +1,16 @@ +// +// ViewControllerPrata.swift +// UIAnimation +// +// Created by Mariana Lima on 28/05/19. +// Copyright © 2019 Pedro Cacique. All rights reserved. +// + +import Foundation +import UIKit + +class ViewControllerPrata: UIViewController{ + + + +} From 0744e9f729ace15c35901ce264f0143c6d80aaaa Mon Sep 17 00:00:00 2001 From: Mariana Lima Date: Wed, 29 May 2019 14:47:48 -0300 Subject: [PATCH 2/2] readicionando animacoes --- .DS_Store | Bin 6148 -> 6148 bytes .../UserInterfaceState.xcuserstate | Bin 30153 -> 31138 bytes UIAnimation/AppDelegate.swift | 2 +- .../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 | 79 ++++++++++++++++-- UIAnimation/Info.plist | 0 UIAnimation/ViewController.swift | 60 ++++++++++++- 49 files changed, 133 insertions(+), 8 deletions(-) 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 mode change 100644 => 100755 UIAnimation/Info.plist mode change 100644 => 100755 UIAnimation/ViewController.swift diff --git a/.DS_Store b/.DS_Store index 202613ac99b2315d9cb3043b88d2642e5dc703ae..ceae0ec8c58b28beff2935b9599dee181ed1df4c 100644 GIT binary patch delta 52 zcmZoMXfc@J&&V<{U^goZ0|Nv1WC2Do&XnThoTU8x9EQm}j5bW$lz^1p<_g9fw$1Du GfB6Avm<|E} delta 37 scmZoMXfc@J&&WJ6U^gT4WPL^(rcIteN^kRQ#vHbZ4a%F@IsWnk0NBh6oB#j- diff --git a/UIAnimation.xcodeproj/project.xcworkspace/xcuserdata/marianalima.xcuserdatad/UserInterfaceState.xcuserstate b/UIAnimation.xcodeproj/project.xcworkspace/xcuserdata/marianalima.xcuserdatad/UserInterfaceState.xcuserstate index be89ef5c51f20c13c834806ca07d93f7494bd671..17248c5c464ea010f0c4448c85623b27d5e8a608 100644 GIT binary patch delta 14361 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 delta 13894 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 diff --git a/UIAnimation/AppDelegate.swift b/UIAnimation/AppDelegate.swift old mode 100644 new mode 100755 index 14c9c06..b7c93a6 --- a/UIAnimation/AppDelegate.swift +++ b/UIAnimation/AppDelegate.swift @@ -9,7 +9,7 @@ import UIKit @UIApplicationMain -class AppDelegate: UIResponder, UIApplicationDelegate { +class AppDelegate: UIResponder, UIApplicationDelegate{ var window: UIWindow? 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..30d4bf1 --- a/UIAnimation/Base.lproj/Main.storyboard +++ b/UIAnimation/Base.lproj/Main.storyboard @@ -13,26 +13,89 @@ - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + + - + - + + + + + + + + + + + + + + + + + + + + + + + + + + + @@ -40,7 +103,7 @@ - + @@ -61,7 +124,7 @@ - + @@ -79,6 +142,10 @@ + + + + diff --git a/UIAnimation/Info.plist b/UIAnimation/Info.plist old mode 100644 new mode 100755 diff --git a/UIAnimation/ViewController.swift b/UIAnimation/ViewController.swift old mode 100644 new mode 100755 index 9804cbb..3034435 --- a/UIAnimation/ViewController.swift +++ b/UIAnimation/ViewController.swift @@ -10,11 +10,69 @@ import UIKit class ViewController: UIViewController { + //puxei primeiro as duas imagens que eram o rocket e o world. + @IBOutlet weak var rocket: UIImageView! + @IBOutlet weak var world: UIImageView! + override func viewDidLoad() { super.viewDidLoad() } - + +//chamada para aparecer as coisas depois que carregar a tela. + override func viewDidAppear(_ animated: Bool) { + + +////aqui voce escreve o que é a sua animação. +//// em options existe o repetir, autoreverse que é pra ele continuar fazer a animacao, o ease ajuda a dar suavidade, deixar mais natural a animação. +// +// UIView.animate(withDuration: 2.0, delay: 2, options: [], animations: { +// self.rocket.center.y = self.view.frame.height - self.world.frame.height/2 +// +////transform serve para voce rotacionar a imagem (faz vezez pi que da 180 graus e assim ele da meia volta). +// self.rocket.transform = self.rocket.transform.rotated(by: .pi/2) +// +////para que voce aumente sua imagem voce v=coloca essa linha de codigo. +// self.rocket.transform = self.rocket.transform.scaledBy(x: 2, y: 2) +// +////quando acabar o tempo da animacao voce entra nesse bloco de dados. +// }, completion: { finished in +//// self.rocket.image = UIImage(named: "rocket2.png" ) +// self.outraAnimacao () +// +// }) + //para que o foguete fique orbitando em volta do mundo + let circlePath = UIBezierPath(arcCenter: self.world.center,radius: self.world.frame.height, startAngle: 0, + endAngle: .pi*2, + clockwise: true) + let animation = CAKeyframeAnimation(keyPath: #keyPath(CALayer.position)) + animation.duration = 2 + animation.repeatCount = MAXFLOAT + animation.path = circlePath.cgPath + rocket.layer.add(animation, forKey: nil) + self.rocket.transform = self.rocket.transform.rotated(by: .pi/2) + + func outraAnimacao() { + UIView.animate(withDuration: 1.5, animations: { + self.rocket.center.x = self.view.frame.width*2 + + }) + } + } + + override func viewWillAppear(_ animated: Bool) { +//chamada para arrumar o conteúdo antes de aparecer na tela (o mundo estar la em baixo e o foguete tambem), ou seja irá ficar posicionado antes de aparecer na tela. + +//tamanho e posição do mundo. + self.world.frame.size.width = self.view.frame.width + self.world.center.y = self.view.frame.height + +//tamanho e posição do foguete. + self.rocket.frame.size.height = self.view.frame.height * 0.15 + self.rocket.center.x = self.view.center.x + self.rocket.center.y = self.rocket.frame.height/2 + + } }