├── .gitignore
├── A guide to iOS animation_logo v1.0.png
├── A guide to iOS animation_logo v2.0.png
├── LICENSE
├── Objective-C Version
├── AnimatedCircleDemo
│ ├── AnimatedCircleDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── xcschemes
│ │ │ ├── AnimatedCircleDemo.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── AnimatedCircleDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── CircleView
│ │ │ ├── CircleLayer.h
│ │ │ ├── CircleLayer.m
│ │ │ ├── CircleView.h
│ │ │ └── CircleView.m
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ └── AnimatedCircleDemoTests
│ │ ├── AnimatedCircleDemoTests.m
│ │ └── Info.plist
├── AnimatedCurveDemo
│ ├── AnimatedCurveDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── AnimatedCurveDemo.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── AnimatedCurveDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── CurveLayer
│ │ │ ├── CurveLayer.h
│ │ │ └── CurveLayer.m
│ │ ├── CurveView
│ │ │ ├── CurveView.h
│ │ │ └── CurveView.m
│ │ ├── Helpers
│ │ │ ├── UIView+Convenient.h
│ │ │ └── UIView+Convenient.m
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ ├── KYPullToCurveVeiw
│ │ │ ├── KYPullToCurveVeiw.h
│ │ │ ├── KYPullToCurveVeiw.m
│ │ │ ├── KYPullToCurveVeiw_footer.h
│ │ │ └── KYPullToCurveVeiw_footer.m
│ │ ├── LabelView
│ │ │ ├── LabelView.h
│ │ │ └── LabelView.m
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ └── AnimatedCurveDemoTests
│ │ ├── AnimatedCurveDemoTests.m
│ │ └── Info.plist
├── DownloadButtonDemo
│ ├── CADemos.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── CADemos.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── CADemos
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── DownloadButton
│ │ │ ├── DownloadButton.h
│ │ │ └── DownloadButton.m
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ └── CADemosTests
│ │ ├── CADemosTests.m
│ │ └── Info.plist
├── DynamicActionBlockDemo
│ └── DynamicActionBlockDemo
│ │ ├── DynamicActionBlockDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── xcschemes
│ │ │ ├── DynamicActionBlockDemo.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ ├── DynamicActionBlockDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── DynamicView.h
│ │ ├── DynamicView.m
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── ball.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── ball.png
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ │ └── DynamicActionBlockDemoTests
│ │ ├── DynamicActionBlockDemoTests.m
│ │ └── Info.plist
├── GooeySlideMenuDemo
│ ├── GooeySlideMenuDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── GooeySlideMenuDemo.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── GooeySlideMenuDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── Classes
│ │ │ ├── GooeySlideMenu.h
│ │ │ ├── GooeySlideMenu.m
│ │ │ ├── SlideMenuButton.h
│ │ │ └── SlideMenuButton.m
│ │ ├── Images.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ └── GooeySlideMenuDemoTests
│ │ ├── GooeySlideMenuDemoTests.m
│ │ └── Info.plist
├── InteractiveCardDemo
│ └── InteractiveCardDemo
│ │ ├── InteractiveCardDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── xcschemes
│ │ │ ├── InteractiveCardDemo.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ ├── InteractiveCardDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.h~HEAD
│ │ ├── AppDelegate.h~Update MCFireWorksButtonDemo and interactiveCard
│ │ ├── AppDelegate.m
│ │ ├── AppDelegate.m~HEAD
│ │ ├── AppDelegate.m~Update MCFireWorksButtonDemo and interactiveCard
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ ├── LaunchScreen.xib~HEAD
│ │ │ ├── LaunchScreen.xib~Update MCFireWorksButtonDemo and interactiveCard
│ │ │ └── Main.storyboard
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Contents.json~HEAD
│ │ │ │ └── Contents.json~Update MCFireWorksButtonDemo and interactiveCard
│ │ │ └── pic01.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── Contents.json~HEAD
│ │ │ │ ├── Contents.json~Update MCFireWorksButtonDemo and interactiveCard
│ │ │ │ └── pic01.jpg
│ │ ├── Info.plist
│ │ ├── Info.plist~HEAD
│ │ ├── Info.plist~Update MCFireWorksButtonDemo and interactiveCard
│ │ ├── InteractiveView
│ │ │ ├── InteractiveView.h
│ │ │ └── InteractiveView.m
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ ├── main.m
│ │ ├── main.m~HEAD
│ │ └── main.m~Update MCFireWorksButtonDemo and interactiveCard
│ │ └── InteractiveCardDemoTests
│ │ ├── Info.plist
│ │ ├── Info.plist~HEAD
│ │ ├── Info.plist~Update MCFireWorksButtonDemo and interactiveCard
│ │ ├── InteractiveCardDemoTests.m
│ │ ├── InteractiveCardDemoTests.m~HEAD
│ │ └── InteractiveCardDemoTests.m~Update MCFireWorksButtonDemo and interactiveCard
├── JumpStarDemo
│ ├── CoreAnimations.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── CoreAnimations.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── CoreAnimations
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ ├── blue_dot.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── blue_dot.png
│ │ │ ├── icon_star_incell.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ ├── icon_star_incell.png
│ │ │ │ └── icon_star_incell_red.png
│ │ │ ├── programming language1.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── programming language1.png
│ │ │ └── shadow_new.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── shadow_new.png
│ │ ├── Info.plist
│ │ ├── JumpStarView
│ │ │ ├── JumpStarView.h
│ │ │ └── JumpStarView.m
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ └── CoreAnimationsTests
│ │ ├── CoreAnimationsTests.m
│ │ └── Info.plist
├── KYBubbleTransition
│ ├── KYBubbleInteractiveTransition.h
│ ├── KYBubbleInteractiveTransition.m
│ ├── KYBubbleTransition.h
│ └── KYBubbleTransition.m
├── KYCuteView
│ ├── KYCuteView.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── xcschemes
│ │ │ ├── KYCuteView.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── KYCuteView
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Assets.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.storyboard
│ │ │ └── Main.storyboard
│ │ ├── Classes
│ │ │ ├── KYCuteView.h
│ │ │ └── KYCuteView.m
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ ├── KYCuteViewTests
│ │ ├── Info.plist
│ │ └── KYCuteViewTests.m
│ └── KYCuteViewUITests
│ │ ├── Info.plist
│ │ └── KYCuteViewUITests.m
├── KYGooeyMenuDemo
│ ├── Classes
│ │ ├── Cross.h
│ │ ├── Cross.m
│ │ ├── KYGooeyMenu.h
│ │ ├── KYGooeyMenu.m
│ │ ├── KYSpringLayerAnimation.h
│ │ ├── KYSpringLayerAnimation.m
│ │ ├── Menu
│ │ │ ├── Menu.h
│ │ │ └── Menu.m
│ │ └── MenuLayer
│ │ │ ├── MenuLayer.h
│ │ │ └── MenuLayer.m
│ └── KYGooeyMenu
│ │ ├── KYGooeyMenu.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── KYGooeyMenu.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ ├── KYGooeyMenu
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ ├── tabbarItem_discover highlighted.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── tabbarItem_discover highlighted.pdf
│ │ │ ├── tabbarItem_group highlighted.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── tabbarItem_group highlighted.pdf
│ │ │ ├── tabbarItem_home highlighted.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── tabbarItem_home highlighted.pdf
│ │ │ ├── tabbarItem_message highlighted.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── tabbarItem_message highlighted.pdf
│ │ │ └── tabbarItem_user_man_highlighted.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── tabbarItem_user_man_highlighted.pdf
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ │ └── KYGooeyMenuTests
│ │ ├── Info.plist
│ │ └── KYGooeyMenuTests.m
├── KYPingTransitionDemo
│ ├── KYPingTransition.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── KYPingTransition.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── KYPingTransition
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ ├── page1.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── IMG_3477.PNG
│ │ │ └── page2.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── IMG_3476.PNG
│ │ ├── Info.plist
│ │ ├── PingInvertTransition.h
│ │ ├── PingInvertTransition.m
│ │ ├── PingTransition.h
│ │ ├── PingTransition.m
│ │ ├── SecondViewController.h
│ │ ├── SecondViewController.m
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ ├── KYPingTransitionTests
│ │ ├── Info.plist
│ │ └── KYPingTransitionTests.m
│ └── pin_g.gif
├── LoadingHUD
│ ├── LoadingHUD.h
│ └── LoadingHUD.m
├── MCFireworksButtonDemo
│ ├── MCFireworksButton
│ │ ├── MCFireworksButton.h
│ │ ├── MCFireworksButton.m
│ │ ├── MCFireworksView.h
│ │ └── MCFireworksView.m
│ ├── MCFireworksButtonDemo
│ │ ├── MCFireworksButtonDemo.xcodeproj
│ │ │ ├── project.pbxproj
│ │ │ ├── project.xcworkspace
│ │ │ │ ├── contents.xcworkspacedata
│ │ │ │ └── xcuserdata
│ │ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ │ └── UserInterfaceState.xcuserstate
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── xcschemes
│ │ │ │ ├── MCFireworksButtonDemo.xcscheme
│ │ │ │ └── xcschememanagement.plist
│ │ ├── MCFireworksButtonDemo
│ │ │ ├── Base.lproj
│ │ │ │ └── Main.storyboard
│ │ │ ├── Images.xcassets
│ │ │ │ ├── AppIcon.appiconset
│ │ │ │ │ └── Contents.json
│ │ │ │ ├── LaunchImage.launchimage
│ │ │ │ │ └── Contents.json
│ │ │ │ ├── Like-Blue.imageset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ └── Like-Blue@2x.png
│ │ │ │ ├── Like.imageset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ └── Like@2x.png
│ │ │ │ └── Sparkle.imageset
│ │ │ │ │ ├── Contents.json
│ │ │ │ │ └── Sparkle.png
│ │ │ ├── MCAppDelegate.h
│ │ │ ├── MCAppDelegate.m
│ │ │ ├── MCFireworksButtonDemo-Info.plist
│ │ │ ├── MCFireworksButtonDemo-Prefix.pch
│ │ │ ├── MCViewController.h
│ │ │ ├── MCViewController.m
│ │ │ ├── en.lproj
│ │ │ │ └── InfoPlist.strings
│ │ │ └── main.m
│ │ └── MCFireworksButtonDemoTests
│ │ │ ├── MCFireworksButtonDemoTests-Info.plist
│ │ │ ├── MCFireworksButtonDemoTests.m
│ │ │ └── en.lproj
│ │ │ └── InfoPlist.strings
│ └── screenshot.gif
├── PulseLoader
│ ├── PulseLoader.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── xcschemes
│ │ │ ├── PulseLoader.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── PulseLoader
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Assets.xcassets
│ │ │ └── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.storyboard
│ │ │ └── Main.storyboard
│ │ ├── Classes
│ │ │ ├── PulseLoader.h
│ │ │ └── PulseLoader.m
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ ├── PulseLoaderTests
│ │ ├── Info.plist
│ │ └── PulseLoaderTests.m
│ └── PulseLoaderUITests
│ │ ├── Info.plist
│ │ └── PulseLoaderUITests.m
├── SnowEffectsDemo
│ └── SnowEffectDemo
│ │ ├── SnowEffectDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── xcschemes
│ │ │ ├── SnowEffectDemo.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ ├── SnowEffectDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── snow.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── snow.png
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ │ └── SnowEffectDemoTests
│ │ ├── Info.plist
│ │ └── SnowEffectDemoTests.m
├── SplashAnimiationDemo
│ ├── SplashAnimiationDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── SplashAnimiationDemo.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── SplashAnimiationDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ ├── home_demo.imageset
│ │ │ │ ├── 1.png
│ │ │ │ └── Contents.json
│ │ │ └── logo.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── logo.png
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ └── SplashAnimiationDemoTests
│ │ ├── Info.plist
│ │ └── SplashAnimiationDemoTests.m
├── UIDynamicsDemo
│ ├── UIDynamicsDemo.xcodeproj
│ │ ├── project.pbxproj
│ │ ├── project.xcworkspace
│ │ │ ├── contents.xcworkspacedata
│ │ │ └── xcuserdata
│ │ │ │ └── KittenYang.xcuserdatad
│ │ │ │ └── UserInterfaceState.xcuserstate
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ ├── xcdebugger
│ │ │ └── Breakpoints_v2.xcbkptlist
│ │ │ └── xcschemes
│ │ │ ├── UIDynamicsDemo.xcscheme
│ │ │ └── xcschememanagement.plist
│ ├── UIDynamicsDemo
│ │ ├── AppDelegate.h
│ │ ├── AppDelegate.m
│ │ ├── Base.lproj
│ │ │ ├── LaunchScreen.xib
│ │ │ └── Main.storyboard
│ │ ├── Images.xcassets
│ │ │ ├── AppIcon.appiconset
│ │ │ │ └── Contents.json
│ │ │ └── lockScreen.imageset
│ │ │ │ ├── Contents.json
│ │ │ │ └── Screenshot_2015-09-07-03-37-02-124_锁屏.png
│ │ ├── Info.plist
│ │ ├── ViewController.h
│ │ ├── ViewController.m
│ │ └── main.m
│ └── UIDynamicsDemoTests
│ │ ├── Info.plist
│ │ └── UIDynamicsDemoTests.m
└── tvOSCardAnimationDemo
│ ├── tvOSCardAnimation.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ ├── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ │ │ └── yangqitao.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ ├── KittenYang.xcuserdatad
│ │ └── xcschemes
│ │ │ ├── tvOSCardAnimation.xcscheme
│ │ │ └── xcschememanagement.plist
│ │ └── yangqitao.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── tvOSCardAnimation.xcscheme
│ │ └── xcschememanagement.plist
│ ├── tvOSCardAnimation
│ ├── AppDelegate.h
│ ├── AppDelegate.m
│ ├── Assets.xcassets
│ │ ├── 1.imageset
│ │ │ ├── 3.png
│ │ │ └── Contents.json
│ │ ├── 2.imageset
│ │ │ ├── 1.png
│ │ │ └── Contents.json
│ │ ├── 3.imageset
│ │ │ ├── 2.png
│ │ │ └── Contents.json
│ │ ├── 4.imageset
│ │ │ ├── 4.png
│ │ │ └── Contents.json
│ │ ├── 5.imageset
│ │ │ ├── 5.png
│ │ │ └── Contents.json
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ └── poster.imageset
│ │ │ ├── Contents.json
│ │ │ └── interstellar3.jpg
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── ViewController.h
│ ├── ViewController.m
│ ├── main.m
│ └── tvOSCardView
│ │ ├── tvOSCardView.h
│ │ └── tvOSCardView.m
│ ├── tvOSCardAnimationTests
│ ├── Info.plist
│ └── tvOSCardAnimationTests.m
│ └── tvOSCardAnimationUITests
│ ├── Info.plist
│ └── tvOSCardAnimationUITests.m
├── README.md
└── Swift Version
├── AnimatedCircleDemo-Swift
├── AnimatedCircleDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ └── xcschemes
│ │ ├── AnimatedCircleDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── AnimatedCircleDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Classes
│ │ ├── CircleLayer.swift
│ │ └── CircleView.swift
│ ├── Info.plist
│ └── ViewController.swift
├── AnimatedCircleDemo-SwiftTests
│ ├── AnimatedCircleDemo_SwiftTests.swift
│ └── Info.plist
└── AnimatedCircleDemo-SwiftUITests
│ ├── AnimatedCircleDemo_SwiftUITests.swift
│ └── Info.plist
├── AnimatedCurveDemo-Swift
├── AnimatedCurveDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── AnimatedCurveDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── AnimatedCurveDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Classes
│ │ ├── CurveLayer
│ │ │ └── CurveLayer.swift
│ │ ├── CurveRefreshFooterView
│ │ │ └── CurveRefreshFooterView.swift
│ │ ├── CurveRefreshHeaderView
│ │ │ └── CurveRefreshHeaderView.swift
│ │ ├── CurveView
│ │ │ └── CurveView.swift
│ │ └── LabelView
│ │ │ └── LabelView.swift
│ ├── Info.plist
│ └── ViewController.swift
├── AnimatedCurveDemo-SwiftTests
│ ├── AnimatedCurveDemo_SwiftTests.swift
│ └── Info.plist
└── AnimatedCurveDemo-SwiftUITests
│ ├── AnimatedCurveDemo_SwiftUITests.swift
│ └── Info.plist
├── BubbleTransitionAnimation
└── BubbleTransitionAnimation.swift
├── DownloadButtonDemo-Swift
├── CADemos-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── CADemos-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── CADemos-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Classes
│ │ └── DownloadButton.swift
│ ├── Info.plist
│ └── ViewController.swift
├── CADemos-SwiftTests
│ ├── CADemos_SwiftTests.swift
│ └── Info.plist
└── CADemos-SwiftUITests
│ ├── CADemos_SwiftUITests.swift
│ └── Info.plist
├── DynamicActionBlockDemo-Swift
├── DynamicActionBlockDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ └── xcschemes
│ │ ├── DynamicActionBlockDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── DynamicActionBlockDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ └── ball.imageset
│ │ │ ├── Contents.json
│ │ │ └── ball.png
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── DynamicView.swift
│ ├── Info.plist
│ └── ViewController.swift
├── DynamicActionBlockDemo-SwiftTests
│ ├── DynamicActionBlockDemo_SwiftTests.swift
│ └── Info.plist
└── DynamicActionBlockDemo-SwiftUITests
│ ├── DynamicActionBlockDemo_SwiftUITests.swift
│ └── Info.plist
├── GooeySlideMenuDemo-Swift
├── GooeySlideMenuDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── GooeySlideMenuDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── GooeySlideMenuDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Classes
│ │ ├── GooeySlideMenu.swift
│ │ └── SlideMenuButton.swift
│ ├── Info.plist
│ └── ViewController.swift
├── GooeySlideMenuDemo-SwiftTests
│ ├── GooeySlideMenuDemo_SwiftTests.swift
│ └── Info.plist
└── GooeySlideMenuDemo-SwiftUITests
│ ├── GooeySlideMenuDemo_SwiftUITests.swift
│ └── Info.plist
├── InteractiveCardDemo-Swift
├── InteractiveCardDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── InteractiveCardDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── InteractiveCardDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ └── pic01.imageset
│ │ │ ├── Contents.json
│ │ │ └── pic01.jpg
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Classess
│ │ └── InteractiveView.swift
│ ├── Info.plist
│ └── ViewController.swift
├── InteractiveCardDemo-SwiftTests
│ ├── Info.plist
│ └── InteractiveCardDemo_SwiftTests.swift
└── InteractiveCardDemo-SwiftUITests
│ ├── Info.plist
│ └── InteractiveCardDemo_SwiftUITests.swift
├── JumpStarDemo-Swift
├── JumpStarDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ └── xcschemes
│ │ ├── JumpStarDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── JumpStarDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ ├── blue_dot.imageset
│ │ │ ├── Contents.json
│ │ │ └── blue_dot.png
│ │ ├── icon_star_incell.imageset
│ │ │ ├── Contents.json
│ │ │ └── icon_star_incell.png
│ │ └── shadow_new.imageset
│ │ │ ├── Contents.json
│ │ │ └── shadow_new.png
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Classes
│ │ └── JumpStarView.swift
│ ├── Info.plist
│ └── ViewController.swift
├── JumpStarDemo-SwiftTests
│ ├── Info.plist
│ └── JumpStarDemo_SwiftTests.swift
└── JumpStarDemo-SwiftUITests
│ ├── Info.plist
│ └── JumpStarDemo_SwiftUITests.swift
├── KYCuteView-Swift
├── KYCuteView-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── KYCuteView-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── KYCuteView-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── CuteView.swift
│ ├── Info.plist
│ └── ViewController.swift
├── KYCuteView-SwiftTests
│ ├── Info.plist
│ └── KYCuteView_SwiftTests.swift
└── KYCuteView-SwiftUITests
│ ├── Info.plist
│ └── KYCuteView_SwiftUITests.swift
├── KYGooeyMenu-Swift
├── KYGooeyMenu-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── KYGooeyMenu-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── KYGooeyMenu-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── Menu
│ │ └── Menu.swift
│ ├── MenuLayer
│ │ └── MenuLayer.swift
│ ├── SpringLayerAnimation
│ │ └── SpringLayerAnimation.swift
│ └── ViewController.swift
├── KYGooeyMenu-SwiftTests
│ ├── Info.plist
│ └── KYGooeyMenu_SwiftTests.swift
└── KYGooeyMenu-SwiftUITests
│ ├── Info.plist
│ └── KYGooeyMenu_SwiftUITests.swift
├── KYPingTransition-Swift
├── KYPingTransition-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── KYPingTransition-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── KYPingTransition-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ ├── page1.imageset
│ │ │ ├── Contents.json
│ │ │ └── IMG_3477.PNG
│ │ └── page2.imageset
│ │ │ ├── Contents.json
│ │ │ └── IMG_3476.PNG
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── PingTransition
│ │ ├── PingInvertTransition.swift
│ │ └── PingTransition.swift
│ ├── SecondViewController.swift
│ └── ViewController.swift
├── KYPingTransition-SwiftTests
│ ├── Info.plist
│ └── KYPingTransition_SwiftTests.swift
└── KYPingTransition-SwiftUITests
│ ├── Info.plist
│ └── KYPingTransition_SwiftUITests.swift
├── LoadingHUD
└── LoadingHUD.swift
├── PulseLoader-Swift
├── PulseLoader-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ └── xcschemes
│ │ ├── PulseLoader-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── PulseLoader-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── PulseLoader
│ │ └── PulseLoader.swift
│ └── ViewController.swift
├── PulseLoader-SwiftTests
│ ├── Info.plist
│ └── PulseLoader_SwiftTests.swift
└── PulseLoader-SwiftUITests
│ ├── Info.plist
│ └── PulseLoader_SwiftUITests.swift
├── ReplicatorLoaderDemo-Swift
├── ReplicatorLoaderDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ ├── xcdebugger
│ │ └── Breakpoints_v2.xcbkptlist
│ │ └── xcschemes
│ │ ├── ReplicatorLoaderDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── ReplicatorLoaderDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ └── AppIcon.appiconset
│ │ │ └── Contents.json
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ ├── ReplicatorLoader
│ │ ├── ReplicatorLoader.swift
│ │ └── Types
│ │ │ ├── DotsFlipReplicatorLayer.swift
│ │ │ ├── GridReplicatorLayer.swift
│ │ │ └── PulseReplicatorLayer.swift
│ └── ViewController.swift
├── ReplicatorLoaderDemo-SwiftTests
│ ├── Info.plist
│ └── ReplicatorLoaderDemo_SwiftTests.swift
└── ReplicatorLoaderDemo-SwiftUITests
│ ├── Info.plist
│ └── ReplicatorLoaderDemo_SwiftUITests.swift
├── SnowEffectDemo-Swift
├── SnowEffectDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ └── xcschemes
│ │ ├── SnowEffectDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── SnowEffectDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ └── snow.imageset
│ │ │ ├── Contents.json
│ │ │ └── snow.png
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ └── ViewController.swift
├── SnowEffectDemo-SwiftTests
│ ├── Info.plist
│ └── SnowEffectDemo_SwiftTests.swift
└── SnowEffectDemo-SwiftUITests
│ ├── Info.plist
│ └── SnowEffectDemo_SwiftUITests.swift
├── SplashAnimiationDemo-Swift
├── SplashAnimiationDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ └── xcschemes
│ │ ├── SplashAnimiationDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── SplashAnimiationDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ ├── home_demo.imageset
│ │ │ ├── 1.png
│ │ │ └── Contents.json
│ │ └── logo.imageset
│ │ │ ├── Contents.json
│ │ │ └── logo.png
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ └── ViewController.swift
├── SplashAnimiationDemo-SwiftTests
│ ├── Info.plist
│ └── SplashAnimiationDemo_SwiftTests.swift
└── SplashAnimiationDemo-SwiftUITests
│ ├── Info.plist
│ └── SplashAnimiationDemo_SwiftUITests.swift
├── UIDynamicsDemo-Swift
├── UIDynamicsDemo-Swift.xcodeproj
│ ├── project.pbxproj
│ ├── project.xcworkspace
│ │ ├── contents.xcworkspacedata
│ │ └── xcuserdata
│ │ │ └── KittenYang.xcuserdatad
│ │ │ └── UserInterfaceState.xcuserstate
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ └── xcschemes
│ │ ├── UIDynamicsDemo-Swift.xcscheme
│ │ └── xcschememanagement.plist
├── UIDynamicsDemo-Swift
│ ├── AppDelegate.swift
│ ├── Assets.xcassets
│ │ ├── AppIcon.appiconset
│ │ │ └── Contents.json
│ │ ├── Contents.json
│ │ └── lockScreen.imageset
│ │ │ ├── Contents.json
│ │ │ └── Screenshot_2015-09-07-03-37-02-124_锁屏.png
│ ├── Base.lproj
│ │ ├── LaunchScreen.storyboard
│ │ └── Main.storyboard
│ ├── Info.plist
│ └── ViewController.swift
├── UIDynamicsDemo-SwiftTests
│ ├── Info.plist
│ └── UIDynamicsDemo_SwiftTests.swift
└── UIDynamicsDemo-SwiftUITests
│ ├── Info.plist
│ └── UIDynamicsDemo_SwiftUITests.swift
└── tvOSCardAnimation-Swift
├── tvOSCardAnimation-Swift.xcodeproj
├── project.pbxproj
├── project.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcuserdata
│ │ └── KittenYang.xcuserdatad
│ │ └── UserInterfaceState.xcuserstate
└── xcuserdata
│ └── KittenYang.xcuserdatad
│ └── xcschemes
│ ├── tvOSCardAnimation-Swift.xcscheme
│ └── xcschememanagement.plist
├── tvOSCardAnimation-Swift
├── AppDelegate.swift
├── Assets.xcassets
│ ├── 1.imageset
│ │ ├── 3.png
│ │ └── Contents.json
│ ├── 2.imageset
│ │ ├── 1.png
│ │ └── Contents.json
│ ├── 3.imageset
│ │ ├── 2.png
│ │ └── Contents.json
│ ├── 4.imageset
│ │ ├── 4.png
│ │ └── Contents.json
│ ├── 5.imageset
│ │ ├── 5.png
│ │ └── Contents.json
│ ├── AppIcon.appiconset
│ │ └── Contents.json
│ ├── Contents.json
│ └── poster.imageset
│ │ ├── Contents.json
│ │ └── interstellar3.jpg
├── Base.lproj
│ ├── LaunchScreen.storyboard
│ └── Main.storyboard
├── Info.plist
├── ViewController.swift
└── tvOSCardView.swift
├── tvOSCardAnimation-SwiftTests
├── Info.plist
└── tvOSCardAnimation_SwiftTests.swift
└── tvOSCardAnimation-SwiftUITests
├── Info.plist
└── tvOSCardAnimation_SwiftUITests.swift
/A guide to iOS animation_logo v1.0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/A guide to iOS animation_logo v1.0.png
--------------------------------------------------------------------------------
/A guide to iOS animation_logo v2.0.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/A guide to iOS animation_logo v2.0.png
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | AnimatedCircleDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5FAAC17C1B6127D9006583DF
16 |
17 | primary
18 |
19 |
20 | 5FAAC1951B6127D9006583DF
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // AnimatedCircleDemo
4 | //
5 | // Created by Kitten Yang on 7/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo/CircleView/CircleLayer.h:
--------------------------------------------------------------------------------
1 | //
2 | // CircleLayer.h
3 | // AnimatedCircleDemo
4 | //
5 | // Created by Kitten Yang on 7/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface CircleLayer : CALayer
12 |
13 | @property(nonatomic,assign)CGFloat progress;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo/CircleView/CircleView.h:
--------------------------------------------------------------------------------
1 | //
2 | // CircleView.h
3 | // AnimatedCircleDemo
4 | //
5 | // Created by Kitten Yang on 7/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "CircleLayer.h"
11 |
12 | @interface CircleView : UIView
13 |
14 | @property(nonatomic,strong)CircleLayer *circleLayer;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo/CircleView/CircleView.m:
--------------------------------------------------------------------------------
1 | //
2 | // CircleView.m
3 | // AnimatedCircleDemo
4 | //
5 | // Created by Kitten Yang on 7/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import "CircleView.h"
10 |
11 | @implementation CircleView
12 |
13 | + (Class)layerClass{
14 | return [CircleLayer class];
15 | }
16 |
17 | -(id)initWithFrame:(CGRect)frame{
18 | self = [super initWithFrame:frame];
19 | if (self) {
20 | self.circleLayer = [CircleLayer layer];
21 | self.circleLayer.frame = CGRectMake(0, 0, frame.size.width, frame.size.height);
22 | self.circleLayer.contentsScale = [UIScreen mainScreen].scale;
23 | [self.layer addSublayer:self.circleLayer];
24 | }
25 | return self;
26 | }
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // AnimatedCircleDemo
4 | //
5 | // Created by Kitten Yang on 7/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // AnimatedCircleDemo
4 | //
5 | // Created by Kitten Yang on 7/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCircleDemo/AnimatedCircleDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | AnimatedCurveDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5FB8743C1B4A6CCC008A3940
16 |
17 | primary
18 |
19 |
20 | 5FB874551B4A6CCE008A3940
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // AnimatedCurveDemo
4 | //
5 | // Created by Kitten Yang on 7/6/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo/CurveLayer/CurveLayer.h:
--------------------------------------------------------------------------------
1 | //
2 | // CurveLayer.h
3 | // AnimatedCurveDemo
4 | //
5 | // Created by Kitten Yang on 7/6/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 |
12 | @interface CurveLayer : CALayer
13 |
14 | /**
15 | * CurveLayer的进度 0~1
16 | */
17 | @property(nonatomic,assign)CGFloat progress;
18 |
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo/CurveView/CurveView.h:
--------------------------------------------------------------------------------
1 | //
2 | // CurveView.h
3 | // AnimatedCurveDemo
4 | //
5 | // Created by Kitten Yang on 7/6/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface CurveView : UIView
12 |
13 |
14 | /**
15 | * CurveView的进度 0~1
16 | */
17 | @property(nonatomic,assign)CGFloat progress;
18 |
19 |
20 | @end
21 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo/KYPullToCurveVeiw/KYPullToCurveVeiw_footer.h:
--------------------------------------------------------------------------------
1 | //
2 | // KYPullToCurveVeiw_footer.h
3 | // AnimatedCurveDemo
4 | //
5 | // Created by yangqitao on 15/7/8.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 |
12 |
13 | @interface KYPullToCurveVeiw_footer : UIView
14 |
15 | /**
16 | * 需要滑动多大距离才能松开
17 | */
18 | @property(nonatomic,assign)CGFloat pullDistance;
19 |
20 |
21 | /**
22 | * 初始化方法
23 | *
24 | * @param scrollView 关联的滚动视图
25 | *
26 | * @return self
27 | */
28 | -(id)initWithAssociatedScrollView:(UIScrollView *)scrollView withNavigationBar:(BOOL)navBar;
29 |
30 |
31 |
32 | /**
33 | * 停止旋转,并且滚动视图回弹到底部
34 | */
35 | -(void)stopRefreshing;
36 |
37 |
38 | /**
39 | * 刷新执行的具体操作
40 | *
41 | * @param block 操作
42 | */
43 |
44 | -(void)addRefreshingBlock:(void (^)(void))block;
45 |
46 |
47 | @end
48 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo/LabelView/LabelView.h:
--------------------------------------------------------------------------------
1 | //
2 | // LabelView.h
3 | // AnimatedCurveDemo
4 | //
5 | // Created by yangqitao on 15/7/8.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 |
12 | typedef enum : NSUInteger {
13 | UP,
14 | DOWN,
15 | } PULLINGSTATE;
16 |
17 | @interface LabelView : UIView
18 |
19 |
20 | /**
21 | * LabelView的进度 0~1
22 | */
23 | @property(nonatomic,assign)CGFloat progress;
24 |
25 |
26 | /**
27 | * 是否正在刷新
28 | */
29 | @property(nonatomic,assign)BOOL loading;
30 |
31 |
32 | /**
33 | * 上拉还是下拉
34 | */
35 | @property(nonatomic,assign)PULLINGSTATE state;
36 |
37 |
38 | @end
39 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // AnimatedCurveDemo
4 | //
5 | // Created by Kitten Yang on 7/6/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // AnimatedCurveDemo
4 | //
5 | // Created by Kitten Yang on 7/6/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/AnimatedCurveDemo/AnimatedCurveDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/DownloadButtonDemo/CADemos.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | CADemos.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F5206451BAEF4E00066BEC6
16 |
17 | primary
18 |
19 |
20 | 5F52065E1BAEF4E10066BEC6
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // CADemos
4 | //
5 | // Created by Kitten Yang on 9/20/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos/DownloadButton/DownloadButton.h:
--------------------------------------------------------------------------------
1 | //
2 | // DownloadButton.h
3 | // CADemos
4 | //
5 | // Created by Kitten Yang on 9/21/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface DownloadButton : UIView
12 |
13 | /**
14 | * 进度条高度
15 | */
16 | @property(nonatomic,assign)CGFloat progressBarHeight;
17 |
18 | /**
19 | * 进度条宽度
20 | */
21 | @property(nonatomic,assign)CGFloat progressBarWidth;
22 |
23 | @end
24 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // CADemos
4 | //
5 | // Created by Kitten Yang on 9/20/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos/ViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // CADemos
4 | //
5 | // Created by Kitten Yang on 9/20/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 | #import "DownloadButton.h"
11 |
12 | @interface ViewController ()
13 | //@property (weak, nonatomic) IBOutlet UIView *AnimateView;
14 | @property (weak, nonatomic) IBOutlet DownloadButton *downloadButton;
15 |
16 | @end
17 |
18 | @implementation ViewController{
19 | BOOL animating;
20 | }
21 |
22 | - (void)viewDidLoad {
23 | [super viewDidLoad];
24 | self.downloadButton.progressBarWidth = 200;
25 | self.downloadButton.progressBarHeight = 30;
26 | }
27 |
28 |
29 |
30 | - (void)didReceiveMemoryWarning {
31 | [super didReceiveMemoryWarning];
32 | // Dispose of any resources that can be recreated.
33 | }
34 |
35 |
36 |
37 |
38 |
39 |
40 | @end
41 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemos/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // CADemos
4 | //
5 | // Created by Kitten Yang on 9/20/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/DownloadButtonDemo/CADemosTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | DynamicActionBlockDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F721B891BB70831006EBBCB
16 |
17 | primary
18 |
19 |
20 | 5F721BA21BB70831006EBBCB
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // DynamicActionBlockDemo
4 | //
5 | // Created by Kitten Yang on 9/27/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicView.h:
--------------------------------------------------------------------------------
1 | //
2 | // DynamicView.h
3 | // DynamicActionBlockDemo
4 | //
5 | // Created by Kitten Yang on 1/2/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface DynamicView : UIView
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo/Images.xcassets/ball.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "ball.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo/Images.xcassets/ball.imageset/ball.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo/Images.xcassets/ball.imageset/ball.png
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // DynamicActionBlockDemo
4 | //
5 | // Created by Kitten Yang on 9/27/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 | @end
14 |
15 |
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo/ViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // DynamicActionBlockDemo
4 | //
5 | // Created by Kitten Yang on 9/27/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 | #import "DynamicView.h"
11 |
12 | @interface ViewController ()
13 |
14 | @end
15 |
16 | @implementation ViewController
17 |
18 | - (void)viewDidLoad {
19 | [super viewDidLoad];
20 | DynamicView *dynamicView = [[DynamicView alloc]initWithFrame:self.view.bounds];
21 | [self.view addSubview:dynamicView];
22 | }
23 |
24 |
25 |
26 | - (void)didReceiveMemoryWarning {
27 | [super didReceiveMemoryWarning];
28 | // Dispose of any resources that can be recreated.
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // DynamicActionBlockDemo
4 | //
5 | // Created by Kitten Yang on 9/27/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/DynamicActionBlockDemo/DynamicActionBlockDemo/DynamicActionBlockDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | GooeySlideMenuDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F2B33F41B77928F0024D2D4
16 |
17 | primary
18 |
19 |
20 | 5F2B340D1B77928F0024D2D4
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // GooeySlideMenuDemo
4 | //
5 | // Created by Kitten Yang on 15/8/9.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo/Classes/SlideMenuButton.h:
--------------------------------------------------------------------------------
1 | //
2 | // SlideMenuButton.h
3 | // GooeySlideMenuDemo
4 | //
5 | // Created by Kitten Yang on 15/8/13.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface SlideMenuButton : UIView
12 |
13 | /**
14 | * onvenient init method
15 | *
16 | * @param title title
17 | *
18 | * @return object
19 | */
20 | -(id)initWithTitle:(NSString *)title;
21 |
22 |
23 | /**
24 | * The button color
25 | */
26 | @property(nonatomic,strong)UIColor *buttonColor;
27 |
28 |
29 |
30 | /**
31 | * button clicked block
32 | */
33 | @property(nonatomic,copy)void(^buttonClickBlock)(void);
34 |
35 |
36 |
37 | @end
38 |
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // GooeySlideMenuDemo
4 | //
5 | // Created by Kitten Yang on 15/8/9.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // GooeySlideMenuDemo
4 | //
5 | // Created by Kitten Yang on 15/8/9.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/GooeySlideMenuDemo/GooeySlideMenuDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | InteractiveCardDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F721BBB1BB84C7C006EBBCB
16 |
17 | primary
18 |
19 |
20 | 5F721BD41BB84C7C006EBBCB
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // InteractiveCardDemo
4 | //
5 | // Created by Kitten Yang on 9/28/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/AppDelegate.h~HEAD:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // InteractiveCardDemo
4 | //
5 | // Created by Kitten Yang on 9/28/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/AppDelegate.h~Update MCFireWorksButtonDemo and interactiveCard:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // InteractiveCardDemo
4 | //
5 | // Created by Kitten Yang on 9/28/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/Images.xcassets/pic01.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "pic01.jpg"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/Images.xcassets/pic01.imageset/Contents.json~HEAD:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "pic01.jpg"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/Images.xcassets/pic01.imageset/Contents.json~Update MCFireWorksButtonDemo and interactiveCard:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "pic01.jpg"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/Images.xcassets/pic01.imageset/pic01.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/Images.xcassets/pic01.imageset/pic01.jpg
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/InteractiveView/InteractiveView.h:
--------------------------------------------------------------------------------
1 | //
2 | // InteractiveView.h
3 | // InteractiveCardDemo
4 | //
5 | // Created by Kitten Yang on 9/28/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface InteractiveView : UIImageView
12 |
13 | @property(nonatomic,weak)UIView *dimmingView;
14 | @property(nonatomic,weak)UIView *gestureView;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // InteractiveCardDemo
4 | //
5 | // Created by Kitten Yang on 9/28/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // InteractiveCardDemo
4 | //
5 | // Created by Kitten Yang on 9/28/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/main.m~HEAD:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // InteractiveCardDemo
4 | //
5 | // Created by Kitten Yang on 9/28/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemo/main.m~Update MCFireWorksButtonDemo and interactiveCard:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // InteractiveCardDemo
4 | //
5 | // Created by Kitten Yang on 9/28/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/InteractiveCardDemo/InteractiveCardDemo/InteractiveCardDemoTests/Info.plist~HEAD:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/JumpStarDemo/CoreAnimations.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | CoreAnimations.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F5205D91BA9B1D40066BEC6
16 |
17 | primary
18 |
19 |
20 | 5F5205F21BA9B1D50066BEC6
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // CoreAnimations
4 | //
5 | // Created by Kitten Yang on 9/16/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/blue_dot.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "blue_dot.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/blue_dot.imageset/blue_dot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/blue_dot.imageset/blue_dot.png
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/icon_star_incell.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x",
6 | "filename" : "icon_star_incell.png"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x",
11 | "filename" : "icon_star_incell_red.png"
12 | },
13 | {
14 | "idiom" : "universal",
15 | "scale" : "3x"
16 | }
17 | ],
18 | "info" : {
19 | "version" : 1,
20 | "author" : "xcode"
21 | }
22 | }
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/icon_star_incell.imageset/icon_star_incell.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/icon_star_incell.imageset/icon_star_incell.png
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/icon_star_incell.imageset/icon_star_incell_red.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/icon_star_incell.imageset/icon_star_incell_red.png
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/programming language1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "programming language1.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/programming language1.imageset/programming language1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/programming language1.imageset/programming language1.png
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/shadow_new.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "shadow_new.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/shadow_new.imageset/shadow_new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/JumpStarDemo/CoreAnimations/Images.xcassets/shadow_new.imageset/shadow_new.png
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/JumpStarView/JumpStarView.h:
--------------------------------------------------------------------------------
1 | //
2 | // JumpStarView.h
3 | // CoreAnimations
4 | //
5 | // Created by Kitten Yang on 9/17/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | typedef enum : NSUInteger {
12 | NONMark,
13 | Mark,
14 | }STATE;
15 |
16 |
17 | @interface JumpStarView : UIView
18 |
19 | -(void)animate;
20 |
21 | @property(nonatomic,assign,setter=setState:)STATE state;
22 |
23 | @property(nonatomic,strong)UIImage *markedImage;
24 |
25 | @property(nonatomic,strong)UIImage *non_markedImage;
26 |
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // CoreAnimations
4 | //
5 | // Created by Kitten Yang on 9/16/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimations/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // CoreAnimations
4 | //
5 | // Created by Kitten Yang on 9/16/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/JumpStarDemo/CoreAnimationsTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/KYBubbleTransition/KYBubbleInteractiveTransition.h:
--------------------------------------------------------------------------------
1 | //
2 | // KYBubbleInteractiveTransition.h
3 | // guji
4 | //
5 | // Created by Kitten Yang on 5/16/15.
6 | // Copyright (c) 2015 Guji Tech Ltd. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface KYBubbleInteractiveTransition : UIPercentDrivenInteractiveTransition
12 |
13 | @property(nonatomic,assign)BOOL interacting;
14 | -(void)addPopGesture:(UIViewController *)viewController;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Objective-C Version/KYCuteView/KYCuteView.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/KYCuteView/KYCuteView.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYCuteView/KYCuteView.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/KYCuteView/KYCuteView.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | KYCuteView.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F41BA2D1C529921002700A2
16 |
17 | primary
18 |
19 |
20 | 5F41BA461C529921002700A2
21 |
22 | primary
23 |
24 |
25 | 5F41BA511C529921002700A2
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Objective-C Version/KYCuteView/KYCuteView/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // KYCuteView
4 | //
5 | // Created by Kitten Yang on 1/23/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/KYCuteView/KYCuteView/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // KYCuteView
4 | //
5 | // Created by Kitten Yang on 1/23/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/KYCuteView/KYCuteView/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // KYCuteView
4 | //
5 | // Created by Kitten Yang on 1/23/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/KYCuteView/KYCuteViewTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/KYCuteView/KYCuteViewUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/Classes/Cross.h:
--------------------------------------------------------------------------------
1 | //
2 | // Cross.h
3 | // KYGooeyMenu
4 | //
5 | // Created by Kitten Yang on 4/25/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface Cross : UIView
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/Classes/Menu/Menu.h:
--------------------------------------------------------------------------------
1 | //
2 | // Menu.h
3 | // KYGooeyMenu
4 | //
5 | // Created by Kitten Yang on 15/8/23.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "MenuLayer.h"
11 |
12 | @interface Menu : UIView
13 |
14 | @property(nonatomic,strong,readonly)MenuLayer *menuLayer;
15 |
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/Classes/MenuLayer/MenuLayer.h:
--------------------------------------------------------------------------------
1 | //
2 | // MenuLayer.h
3 | // KYGooeyMenu
4 | //
5 | // Created by Kitten Yang on 15/8/23.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 |
12 | typedef enum : NSUInteger {
13 | STATE1,
14 | STATE2,
15 | STATE3,
16 | } STATE;
17 |
18 | @interface MenuLayer : CALayer
19 |
20 | @property(nonatomic,assign)BOOL showDebug;
21 | @property(nonatomic,assign)STATE animState;
22 | @property(nonatomic,assign)CGFloat xAxisPercent;
23 |
24 | @end
25 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
8 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | KYGooeyMenu.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F5DCAD71AE9441F00CA8491
16 |
17 | primary
18 |
19 |
20 | 5F5DCAF01AE9442100CA8491
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // KYGooeyMenu
4 | //
5 | // Created by Kitten Yang on 4/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_discover highlighted.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "tabbarItem_discover highlighted.pdf"
6 | }
7 | ],
8 | "info" : {
9 | "version" : 1,
10 | "author" : "xcode"
11 | }
12 | }
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_discover highlighted.imageset/tabbarItem_discover highlighted.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_discover highlighted.imageset/tabbarItem_discover highlighted.pdf
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_group highlighted.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "tabbarItem_group highlighted.pdf"
6 | }
7 | ],
8 | "info" : {
9 | "version" : 1,
10 | "author" : "xcode"
11 | }
12 | }
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_group highlighted.imageset/tabbarItem_group highlighted.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_group highlighted.imageset/tabbarItem_group highlighted.pdf
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_home highlighted.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "tabbarItem_home highlighted.pdf"
6 | }
7 | ],
8 | "info" : {
9 | "version" : 1,
10 | "author" : "xcode"
11 | }
12 | }
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_home highlighted.imageset/tabbarItem_home highlighted.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_home highlighted.imageset/tabbarItem_home highlighted.pdf
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_message highlighted.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "tabbarItem_message highlighted.pdf"
6 | }
7 | ],
8 | "info" : {
9 | "version" : 1,
10 | "author" : "xcode"
11 | }
12 | }
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_message highlighted.imageset/tabbarItem_message highlighted.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_message highlighted.imageset/tabbarItem_message highlighted.pdf
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_user_man_highlighted.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "filename" : "tabbarItem_user_man_highlighted.pdf"
6 | }
7 | ],
8 | "info" : {
9 | "version" : 1,
10 | "author" : "xcode"
11 | }
12 | }
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_user_man_highlighted.imageset/tabbarItem_user_man_highlighted.pdf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/Images.xcassets/tabbarItem_user_man_highlighted.imageset/tabbarItem_user_man_highlighted.pdf
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // KYGooeyMenu
4 | //
5 | // Created by Kitten Yang on 4/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenu/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // KYGooeyMenu
4 | //
5 | // Created by Kitten Yang on 4/23/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/KYGooeyMenuDemo/KYGooeyMenu/KYGooeyMenuTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYPingTransitionDemo/KYPingTransition.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | KYPingTransition.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F5777CD1A7B6F5B00FC3A61
16 |
17 | primary
18 |
19 |
20 | 5F5777E61A7B6F5B00FC3A61
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // KYPingTransition
4 | //
5 | // Created by Kitten Yang on 1/30/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/Images.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "iphone",
5 | "size" : "29x29",
6 | "scale" : "2x"
7 | },
8 | {
9 | "idiom" : "iphone",
10 | "size" : "29x29",
11 | "scale" : "3x"
12 | },
13 | {
14 | "idiom" : "iphone",
15 | "size" : "40x40",
16 | "scale" : "2x"
17 | },
18 | {
19 | "idiom" : "iphone",
20 | "size" : "40x40",
21 | "scale" : "3x"
22 | },
23 | {
24 | "idiom" : "iphone",
25 | "size" : "60x60",
26 | "scale" : "2x"
27 | },
28 | {
29 | "idiom" : "iphone",
30 | "size" : "60x60",
31 | "scale" : "3x"
32 | }
33 | ],
34 | "info" : {
35 | "version" : 1,
36 | "author" : "xcode"
37 | }
38 | }
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/Images.xcassets/page1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "IMG_3477.PNG"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/Images.xcassets/page1.imageset/IMG_3477.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYPingTransitionDemo/KYPingTransition/Images.xcassets/page1.imageset/IMG_3477.PNG
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/Images.xcassets/page2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "IMG_3476.PNG"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/Images.xcassets/page2.imageset/IMG_3476.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYPingTransitionDemo/KYPingTransition/Images.xcassets/page2.imageset/IMG_3476.PNG
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/PingInvertTransition.h:
--------------------------------------------------------------------------------
1 | //
2 | // PingInvertTransition.h
3 | // KYPingTransition
4 | //
5 | // Created by Kitten Yang on 1/30/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 |
12 | @interface PingInvertTransition : NSObject
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/PingTransition.h:
--------------------------------------------------------------------------------
1 | //
2 | // PingTransition.h
3 | // KYPingTransition
4 | //
5 | // Created by Kitten Yang on 1/30/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import
11 | //#import
12 |
13 | @interface PingTransition : NSObject
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/SecondViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // SecondViewController.h
3 | // KYPingTransition
4 | //
5 | // Created by Kitten Yang on 1/31/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface SecondViewController : UIViewController
12 | @property (strong, nonatomic) IBOutlet UIButton *button;
13 |
14 | @end
15 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // KYPingTransition
4 | //
5 | // Created by Kitten Yang on 1/30/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 | @property (strong, nonatomic) IBOutlet UIButton *button;
14 |
15 | @end
16 |
17 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransition/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // KYPingTransition
4 | //
5 | // Created by Kitten Yang on 1/30/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/KYPingTransitionTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/KYPingTransitionDemo/pin_g.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/KYPingTransitionDemo/pin_g.gif
--------------------------------------------------------------------------------
/Objective-C Version/LoadingHUD/LoadingHUD.h:
--------------------------------------------------------------------------------
1 | //
2 | // LoadingHUD.h
3 | // Cosmos
4 | //
5 | // Created by KittenYang on 16/3/9.
6 | // Copyright © 2016年 KittenYang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface LoadingHUD : UIVisualEffectView
12 |
13 | +(void)showHUD;
14 | +(void)dismissHUD;
15 |
16 | @end
17 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButton/MCFireworksButton.h:
--------------------------------------------------------------------------------
1 | //
2 | // MCFireworksButton.h
3 | // MCFireworksButton
4 | //
5 | // Created by Matthew Cheok on 17/3/14.
6 | // Copyright (c) 2014 Matthew Cheok. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MCFireworksButton : UIButton
12 |
13 | @property (strong, nonatomic) UIImage *particleImage;
14 | @property (assign, nonatomic) CGFloat particleScale;
15 | @property (assign, nonatomic) CGFloat particleScaleRange;
16 |
17 | - (void)animate;
18 | - (void)popOutsideWithDuration:(NSTimeInterval)duration;
19 | - (void)popInsideWithDuration:(NSTimeInterval)duration;
20 |
21 | @end
22 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButton/MCFireworksView.h:
--------------------------------------------------------------------------------
1 | //
2 | // MCFireworksView.h
3 | // MCFireworksButton
4 | //
5 | // Created by Matthew Cheok on 17/3/14.
6 | // Copyright (c) 2014 Matthew Cheok. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MCFireworksView : UIView
12 |
13 | @property (strong, nonatomic) UIImage *particleImage;
14 | @property (assign, nonatomic) CGFloat particleScale;
15 | @property (assign, nonatomic) CGFloat particleScaleRange;
16 |
17 | - (void)animate;
18 |
19 | @end
20 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
5 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | MCFireworksButtonDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 34B2D88118D68B3C0089F6A4
16 |
17 | primary
18 |
19 |
20 | 34B2D8A218D68B3C0089F6A4
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/AppIcon.appiconset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "iphone",
5 | "size" : "29x29",
6 | "scale" : "2x"
7 | },
8 | {
9 | "idiom" : "iphone",
10 | "size" : "40x40",
11 | "scale" : "2x"
12 | },
13 | {
14 | "idiom" : "iphone",
15 | "size" : "60x60",
16 | "scale" : "2x"
17 | },
18 | {
19 | "idiom" : "iphone",
20 | "size" : "60x60",
21 | "scale" : "3x"
22 | }
23 | ],
24 | "info" : {
25 | "version" : 1,
26 | "author" : "xcode"
27 | }
28 | }
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/LaunchImage.launchimage/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "orientation" : "portrait",
5 | "idiom" : "iphone",
6 | "extent" : "full-screen",
7 | "minimum-system-version" : "7.0",
8 | "scale" : "2x"
9 | },
10 | {
11 | "orientation" : "portrait",
12 | "idiom" : "iphone",
13 | "subtype" : "retina4",
14 | "extent" : "full-screen",
15 | "minimum-system-version" : "7.0",
16 | "scale" : "2x"
17 | }
18 | ],
19 | "info" : {
20 | "version" : 1,
21 | "author" : "xcode"
22 | }
23 | }
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Like-Blue.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "Like-Blue@2x.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Like-Blue.imageset/Like-Blue@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Like-Blue.imageset/Like-Blue@2x.png
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Like.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "Like@2x.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Like.imageset/Like@2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Like.imageset/Like@2x.png
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Sparkle.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x",
6 | "filename" : "Sparkle.png"
7 | },
8 | {
9 | "idiom" : "universal",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Sparkle.imageset/Sparkle.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/Images.xcassets/Sparkle.imageset/Sparkle.png
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/MCAppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // MCAppDelegate.h
3 | // MCFireworksButtonDemo
4 | //
5 | // Created by Matthew Cheok on 17/3/14.
6 | // Copyright (c) 2014 Matthew Cheok. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MCAppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 | @end
16 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo-Prefix.pch:
--------------------------------------------------------------------------------
1 | //
2 | // Prefix header
3 | //
4 | // The contents of this file are implicitly included at the beginning of every source file.
5 | //
6 |
7 | #import
8 |
9 | #ifndef __IPHONE_5_0
10 | #warning "This project uses features only available in iOS SDK 5.0 and later."
11 | #endif
12 |
13 | #ifdef __OBJC__
14 | #import
15 | #import
16 | #endif
17 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/MCViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // MCViewController.h
3 | // MCFireworksButtonDemo
4 | //
5 | // Created by Matthew Cheok on 17/3/14.
6 | // Copyright (c) 2014 Matthew Cheok. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface MCViewController : UIViewController
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/en.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
1 | /* Localized versions of Info.plist keys */
2 |
3 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // MCFireworksButtonDemo
4 | //
5 | // Created by Matthew Cheok on 17/3/14.
6 | // Copyright (c) 2014 Matthew Cheok. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | #import "MCAppDelegate.h"
12 |
13 | int main(int argc, char * argv[])
14 | {
15 | @autoreleasepool {
16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([MCAppDelegate class]));
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemoTests/MCFireworksButtonDemoTests-Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | ${EXECUTABLE_NAME}
9 | CFBundleIdentifier
10 | com.matthewcheok.${PRODUCT_NAME:rfc1034identifier}
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundlePackageType
14 | BNDL
15 | CFBundleShortVersionString
16 | 1.0
17 | CFBundleSignature
18 | ????
19 | CFBundleVersion
20 | 1
21 |
22 |
23 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/MCFireworksButtonDemo/MCFireworksButtonDemoTests/en.lproj/InfoPlist.strings:
--------------------------------------------------------------------------------
1 | /* Localized versions of Info.plist keys */
2 |
3 |
--------------------------------------------------------------------------------
/Objective-C Version/MCFireworksButtonDemo/screenshot.gif:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/MCFireworksButtonDemo/screenshot.gif
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoader.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoader.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/PulseLoader/PulseLoader.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoader.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | PulseLoader.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5FE4F0251C6106210029AC3F
16 |
17 | primary
18 |
19 |
20 | 5FE4F03E1C6106260029AC3F
21 |
22 | primary
23 |
24 |
25 | 5FE4F0491C6106260029AC3F
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoader/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // PulseLoader
4 | //
5 | // Created by Kitten Yang on 2/2/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoader/Classes/PulseLoader.h:
--------------------------------------------------------------------------------
1 | //
2 | // PulseLoader.h
3 | // PulseLoader
4 | //
5 | // Created by Kitten Yang on 2/2/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface PulseLoader : UIView
12 |
13 | -(id)initWithFrame:(CGRect)frame withColor:(UIColor *)color;
14 |
15 | - (void)startToPulse;
16 |
17 | @end
18 |
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoader/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // PulseLoader
4 | //
5 | // Created by Kitten Yang on 2/2/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoader/ViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // PulseLoader
4 | //
5 | // Created by Kitten Yang on 2/2/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 | #import "PulseLoader.h"
11 |
12 | @interface ViewController ()
13 |
14 | @end
15 |
16 | @implementation ViewController
17 |
18 | - (void)viewDidLoad {
19 | [super viewDidLoad];
20 | PulseLoader *pulseLoader = [[PulseLoader alloc]initWithFrame:CGRectMake(0, 0, 50, 50) withColor:[UIColor redColor]];
21 | pulseLoader.center = self.view.center;
22 | [self.view addSubview:pulseLoader];
23 |
24 | [pulseLoader startToPulse];
25 | }
26 |
27 | - (void)didReceiveMemoryWarning {
28 | [super didReceiveMemoryWarning];
29 | }
30 |
31 | @end
32 |
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoader/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // PulseLoader
4 | //
5 | // Created by Kitten Yang on 2/2/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoaderTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/PulseLoader/PulseLoaderUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | SnowEffectDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F721B571BB7007A006EBBCB
16 |
17 | primary
18 |
19 |
20 | 5F721B701BB7007B006EBBCB
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // SnowEffectDemo
4 | //
5 | // Created by Kitten Yang on 9/27/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo/Images.xcassets/snow.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "snow.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo/Images.xcassets/snow.imageset/snow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo/Images.xcassets/snow.imageset/snow.png
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // SnowEffectDemo
4 | //
5 | // Created by Kitten Yang on 9/27/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // SnowEffectDemo
4 | //
5 | // Created by Kitten Yang on 9/27/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/SnowEffectsDemo/SnowEffectDemo/SnowEffectDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | SplashAnimiationDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F2B33C21B7777360024D2D4
16 |
17 | primary
18 |
19 |
20 | 5F2B33DB1B7777380024D2D4
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // SplashAnimiationDemo
4 | //
5 | // Created by Kitten Yang on 15/8/9.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/Images.xcassets/home_demo.imageset/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/Images.xcassets/home_demo.imageset/1.png
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/Images.xcassets/home_demo.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "1.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/Images.xcassets/logo.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "logo.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/Images.xcassets/logo.imageset/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/Images.xcassets/logo.imageset/logo.png
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // SplashAnimiationDemo
4 | //
5 | // Created by Kitten Yang on 15/8/9.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/ViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // SplashAnimiationDemo
4 | //
5 | // Created by Kitten Yang on 15/8/9.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 |
11 | @interface ViewController ()
12 |
13 | @end
14 |
15 | @implementation ViewController
16 |
17 | - (void)viewDidLoad {
18 | [super viewDidLoad];
19 | self.title = @"首页";
20 | // Do any additional setup after loading the view, typically from a nib.
21 | }
22 |
23 | - (void)didReceiveMemoryWarning {
24 | [super didReceiveMemoryWarning];
25 | // Dispose of any resources that can be recreated.
26 | }
27 |
28 | @end
29 |
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // SplashAnimiationDemo
4 | //
5 | // Created by Kitten Yang on 15/8/9.
6 | // Copyright (c) 2015年 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/SplashAnimiationDemo/SplashAnimiationDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | UIDynamicsDemo.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F331E511B9CAD13008F9872
16 |
17 | primary
18 |
19 |
20 | 5F331E6A1B9CAD15008F9872
21 |
22 | primary
23 |
24 |
25 |
26 |
27 |
28 |
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // UIDynamicsDemo
4 | //
5 | // Created by Kitten Yang on 9/7/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo/Images.xcassets/lockScreen.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "scale" : "2x",
10 | "filename" : "Screenshot_2015-09-07-03-37-02-124_锁屏.png"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo/Images.xcassets/lockScreen.imageset/Screenshot_2015-09-07-03-37-02-124_锁屏.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo/Images.xcassets/lockScreen.imageset/Screenshot_2015-09-07-03-37-02-124_锁屏.png
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // UIDynamicsDemo
4 | //
5 | // Created by Kitten Yang on 9/7/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemo/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // UIDynamicsDemo
4 | //
5 | // Created by Kitten Yang on 9/7/15.
6 | // Copyright (c) 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/UIDynamicsDemo/UIDynamicsDemoTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | com.$(PRODUCT_NAME:rfc1034identifier)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation.xcodeproj/project.xcworkspace/xcuserdata/yangqitao.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation.xcodeproj/project.xcworkspace/xcuserdata/yangqitao.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | tvOSCardAnimation.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | F4FB5B2E1BAFE6A600A45BDE
16 |
17 | primary
18 |
19 |
20 | F4FB5B471BAFE6A600A45BDE
21 |
22 | primary
23 |
24 |
25 | F4FB5B521BAFE6A600A45BDE
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation.xcodeproj/xcuserdata/yangqitao.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation.xcodeproj/xcuserdata/yangqitao.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | tvOSCardAnimation.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | F4FB5B2E1BAFE6A600A45BDE
16 |
17 | primary
18 |
19 |
20 | F4FB5B471BAFE6A600A45BDE
21 |
22 | primary
23 |
24 |
25 | F4FB5B521BAFE6A600A45BDE
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/AppDelegate.h:
--------------------------------------------------------------------------------
1 | //
2 | // AppDelegate.h
3 | // tvOSCardAnimation
4 | //
5 | // Created by yangqitao on 15/9/21.
6 | // Copyright © 2015年 yangqitao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface AppDelegate : UIResponder
12 |
13 | @property (strong, nonatomic) UIWindow *window;
14 |
15 |
16 | @end
17 |
18 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/1.imageset/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/1.imageset/3.png
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "3.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/2.imageset/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/2.imageset/1.png
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "1.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/3.imageset/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/3.imageset/2.png
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/3.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "2.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/4.imageset/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/4.imageset/4.png
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/4.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "4.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/5.imageset/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/5.imageset/5.png
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/5.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "5.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/poster.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "interstellar3.jpg",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/poster.imageset/interstellar3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/Assets.xcassets/poster.imageset/interstellar3.jpg
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/ViewController.h:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.h
3 | // tvOSCardAnimation
4 | //
5 | // Created by yangqitao on 15/9/21.
6 | // Copyright © 2015年 yangqitao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface ViewController : UIViewController
12 |
13 |
14 | @end
15 |
16 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/ViewController.m:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.m
3 | // tvOSCardAnimation
4 | //
5 | // Created by yangqitao on 15/9/21.
6 | // Copyright © 2015年 yangqitao. All rights reserved.
7 | //
8 |
9 | #import "ViewController.h"
10 | #import "tvOSCardView.h"
11 |
12 | @interface ViewController ()
13 |
14 | @end
15 |
16 | @implementation ViewController
17 |
18 | - (void)viewDidLoad {
19 | [super viewDidLoad];
20 |
21 | tvOSCardView *cardView = [[tvOSCardView alloc]init];
22 | cardView.center = self.view.center;
23 | cardView.bounds = CGRectMake(0, 0, 150, 200);
24 | [self.view addSubview:cardView];
25 |
26 | }
27 |
28 |
29 | - (void)didReceiveMemoryWarning {
30 | [super didReceiveMemoryWarning];
31 | }
32 |
33 | @end
34 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/main.m:
--------------------------------------------------------------------------------
1 | //
2 | // main.m
3 | // tvOSCardAnimation
4 | //
5 | // Created by yangqitao on 15/9/21.
6 | // Copyright © 2015年 yangqitao. All rights reserved.
7 | //
8 |
9 | #import
10 | #import "AppDelegate.h"
11 |
12 | int main(int argc, char * argv[]) {
13 | @autoreleasepool {
14 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class]));
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimation/tvOSCardView/tvOSCardView.h:
--------------------------------------------------------------------------------
1 | //
2 | // tvOSCardView.h
3 | // tvOSCardAnimation
4 | //
5 | // Created by yangqitao on 15/9/22.
6 | // Copyright © 2015年 yangqitao. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | @interface tvOSCardView : UIView
12 |
13 | @end
14 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimationTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Objective-C Version/tvOSCardAnimationDemo/tvOSCardAnimationUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCircleDemo-Swift/AnimatedCircleDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCircleDemo-Swift/AnimatedCircleDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/AnimatedCircleDemo-Swift/AnimatedCircleDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/AnimatedCircleDemo-Swift/AnimatedCircleDemo-Swift/Classes/CircleView.swift:
--------------------------------------------------------------------------------
1 | //
2 | // CircleView.swift
3 | // AnimatedCircleDemo-Swift
4 | //
5 | // Created by Kitten Yang on 1/18/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | import UIKit
10 |
11 | class CircleView: UIView {
12 |
13 | var circleLayer = CircleLayer()
14 |
15 | override init(frame: CGRect) {
16 | super.init(frame: frame)
17 | circleLayer.frame = CGRectMake(0, 0, frame.size.width, frame.size.height)
18 | circleLayer.contentsScale = UIScreen.mainScreen().scale
19 | layer.addSublayer(circleLayer)
20 | }
21 |
22 | required init?(coder aDecoder: NSCoder) {
23 | fatalError("init(coder:) has not been implemented")
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCircleDemo-Swift/AnimatedCircleDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCircleDemo-Swift/AnimatedCircleDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCurveDemo-Swift/AnimatedCurveDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCurveDemo-Swift/AnimatedCurveDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/AnimatedCurveDemo-Swift/AnimatedCurveDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/AnimatedCurveDemo-Swift/AnimatedCurveDemo-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCurveDemo-Swift/AnimatedCurveDemo-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | AnimatedCurveDemo-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F85F9971C4C0C160062A057
16 |
17 | primary
18 |
19 |
20 | 5F85F9AB1C4C0C1B0062A057
21 |
22 | primary
23 |
24 |
25 | 5F85F9B61C4C0C1C0062A057
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCurveDemo-Swift/AnimatedCurveDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/AnimatedCurveDemo-Swift/AnimatedCurveDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/DownloadButtonDemo-Swift/CADemos-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/DownloadButtonDemo-Swift/CADemos-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/DownloadButtonDemo-Swift/CADemos-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/DownloadButtonDemo-Swift/CADemos-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
8 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/Swift Version/DownloadButtonDemo-Swift/CADemos-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | CADemos-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F6650301C33D20D003BAC90
16 |
17 | primary
18 |
19 |
20 | 5F6650441C33D20D003BAC90
21 |
22 | primary
23 |
24 |
25 | 5F66504F1C33D20D003BAC90
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/DownloadButtonDemo-Swift/CADemos-Swift/ViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.swift
3 | // CADemos-Swift
4 | //
5 | // Created by Kitten Yang on 12/30/15.
6 | // Copyright © 2015 Kitten Yang. All rights reserved.
7 | //
8 |
9 | import UIKit
10 |
11 | class ViewController: UIViewController {
12 |
13 | @IBOutlet weak var downloadButton: DownloadButton!
14 |
15 | override func viewDidLoad() {
16 | super.viewDidLoad()
17 | downloadButton.progressBarWidth = 200
18 | downloadButton.progressBarHeight = 30
19 | }
20 |
21 | override func didReceiveMemoryWarning() {
22 | super.didReceiveMemoryWarning()
23 | }
24 |
25 |
26 | }
27 |
28 |
--------------------------------------------------------------------------------
/Swift Version/DownloadButtonDemo-Swift/CADemos-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/DownloadButtonDemo-Swift/CADemos-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-Swift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-Swift/Assets.xcassets/ball.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "ball.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-Swift/Assets.xcassets/ball.imageset/ball.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-Swift/Assets.xcassets/ball.imageset/ball.png
--------------------------------------------------------------------------------
/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-Swift/ViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.swift
3 | // DynamicActionBlockDemo-Swift
4 | //
5 | // Created by Kitten Yang on 1/2/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | import UIKit
10 |
11 | class ViewController: UIViewController {
12 |
13 | override func viewDidLoad() {
14 | super.viewDidLoad()
15 | let dynamicView = DynamicView(frame: view.bounds)
16 | view.addSubview(dynamicView)
17 | }
18 |
19 | override func didReceiveMemoryWarning() {
20 | super.didReceiveMemoryWarning()
21 | }
22 |
23 |
24 | }
25 |
26 |
--------------------------------------------------------------------------------
/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/DynamicActionBlockDemo-Swift/DynamicActionBlockDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/GooeySlideMenuDemo-Swift/GooeySlideMenuDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/GooeySlideMenuDemo-Swift/GooeySlideMenuDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/GooeySlideMenuDemo-Swift/GooeySlideMenuDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/GooeySlideMenuDemo-Swift/GooeySlideMenuDemo-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Swift Version/GooeySlideMenuDemo-Swift/GooeySlideMenuDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/GooeySlideMenuDemo-Swift/GooeySlideMenuDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-Swift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-Swift/Assets.xcassets/pic01.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "pic01.jpg",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-Swift/Assets.xcassets/pic01.imageset/pic01.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-Swift/Assets.xcassets/pic01.imageset/pic01.jpg
--------------------------------------------------------------------------------
/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/InteractiveCardDemo-Swift/InteractiveCardDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | JumpStarDemo-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5FFE11601C3D02A5001AE2AC
16 |
17 | primary
18 |
19 |
20 | 5FFE11741C3D02AA001AE2AC
21 |
22 | primary
23 |
24 |
25 | 5FFE117F1C3D02AA001AE2AC
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/blue_dot.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "blue_dot.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/blue_dot.imageset/blue_dot.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/blue_dot.imageset/blue_dot.png
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/icon_star_incell.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "icon_star_incell.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/icon_star_incell.imageset/icon_star_incell.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/icon_star_incell.imageset/icon_star_incell.png
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/shadow_new.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "shadow_new.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/shadow_new.imageset/shadow_new.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/JumpStarDemo-Swift/JumpStarDemo-Swift/Assets.xcassets/shadow_new.imageset/shadow_new.png
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/JumpStarDemo-Swift/JumpStarDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/KYCuteView-Swift/KYCuteView-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/KYCuteView-Swift/KYCuteView-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/KYCuteView-Swift/KYCuteView-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/KYCuteView-Swift/KYCuteView-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Swift Version/KYCuteView-Swift/KYCuteView-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | KYCuteView-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5FE4ECC91C4E67AE000BFA16
16 |
17 | primary
18 |
19 |
20 | 5FE4ECDD1C4E67AF000BFA16
21 |
22 | primary
23 |
24 |
25 | 5FE4ECE81C4E67AF000BFA16
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/KYCuteView-Swift/KYCuteView-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/KYCuteView-Swift/KYCuteView-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/KYGooeyMenu-Swift/KYGooeyMenu-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/KYGooeyMenu-Swift/KYGooeyMenu-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/KYGooeyMenu-Swift/KYGooeyMenu-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/KYGooeyMenu-Swift/KYGooeyMenu-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Swift Version/KYGooeyMenu-Swift/KYGooeyMenu-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | KYGooeyMenu-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5FFE119D1C3E5C67001AE2AC
16 |
17 | primary
18 |
19 |
20 | 5FFE11B11C3E5C67001AE2AC
21 |
22 | primary
23 |
24 |
25 | 5FFE11BC1C3E5C67001AE2AC
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/KYGooeyMenu-Swift/KYGooeyMenu-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/KYGooeyMenu-Swift/KYGooeyMenu-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | KYPingTransition-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F831AA21C3FFFF300305CA1
16 |
17 | primary
18 |
19 |
20 | 5F831AB61C3FFFF300305CA1
21 |
22 | primary
23 |
24 |
25 | 5F831AC11C3FFFF300305CA1
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift/Assets.xcassets/page1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "IMG_3477.PNG",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift/Assets.xcassets/page1.imageset/IMG_3477.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift/Assets.xcassets/page1.imageset/IMG_3477.PNG
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift/Assets.xcassets/page2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "IMG_3476.PNG",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift/Assets.xcassets/page2.imageset/IMG_3476.PNG:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/KYPingTransition-Swift/KYPingTransition-Swift/Assets.xcassets/page2.imageset/IMG_3476.PNG
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/KYPingTransition-Swift/KYPingTransition-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/PulseLoader-Swift/PulseLoader-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/PulseLoader-Swift/PulseLoader-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/PulseLoader-Swift/PulseLoader-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/PulseLoader-Swift/PulseLoader-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | PulseLoader-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5FE4EFE91C60B6A60029AC3F
16 |
17 | primary
18 |
19 |
20 | 5FE4EFFD1C60B6A70029AC3F
21 |
22 | primary
23 |
24 |
25 | 5FE4F0081C60B6A70029AC3F
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/PulseLoader-Swift/PulseLoader-Swift/ViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.swift
3 | // PulseLoader-Swift
4 | //
5 | // Created by Kitten Yang on 2/2/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | import UIKit
10 |
11 | class ViewController: UIViewController {
12 |
13 | override func viewDidLoad() {
14 | super.viewDidLoad()
15 |
16 | let pulseLoader = PulseLoader(frame: CGRect(origin: view.center, size: CGSize(width: 100, height: 100)), color: UIColor.redColor())
17 | pulseLoader.center = view.center
18 | view.addSubview(pulseLoader)
19 |
20 | pulseLoader.startToPluse()
21 | }
22 |
23 | override func didReceiveMemoryWarning() {
24 | super.didReceiveMemoryWarning()
25 | }
26 |
27 |
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/Swift Version/PulseLoader-Swift/PulseLoader-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/PulseLoader-Swift/PulseLoader-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/ReplicatorLoaderDemo-Swift/ReplicatorLoaderDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/ReplicatorLoaderDemo-Swift/ReplicatorLoaderDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/ReplicatorLoaderDemo-Swift/ReplicatorLoaderDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/ReplicatorLoaderDemo-Swift/ReplicatorLoaderDemo-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist:
--------------------------------------------------------------------------------
1 |
2 |
5 |
6 |
--------------------------------------------------------------------------------
/Swift Version/ReplicatorLoaderDemo-Swift/ReplicatorLoaderDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/ReplicatorLoaderDemo-Swift/ReplicatorLoaderDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | SnowEffectDemo-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F444F321C47F74F00FA2868
16 |
17 | primary
18 |
19 |
20 | 5F444F461C47F75000FA2868
21 |
22 | primary
23 |
24 |
25 | 5F444F511C47F75000FA2868
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-Swift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-Swift/Assets.xcassets/snow.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "snow.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-Swift/Assets.xcassets/snow.imageset/snow.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-Swift/Assets.xcassets/snow.imageset/snow.png
--------------------------------------------------------------------------------
/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/SnowEffectDemo-Swift/SnowEffectDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift/Assets.xcassets/home_demo.imageset/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift/Assets.xcassets/home_demo.imageset/1.png
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift/Assets.xcassets/home_demo.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "1.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift/Assets.xcassets/logo.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "logo.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift/Assets.xcassets/logo.imageset/logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift/Assets.xcassets/logo.imageset/logo.png
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-Swift/ViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.swift
3 | // SplashAnimiationDemo-Swift
4 | //
5 | // Created by Kitten Yang on 1/15/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | import UIKit
10 |
11 | class ViewController: UIViewController {
12 |
13 | override func viewDidLoad() {
14 | super.viewDidLoad()
15 | title = "首页"
16 | }
17 |
18 | override func didReceiveMemoryWarning() {
19 | super.didReceiveMemoryWarning()
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/SplashAnimiationDemo-Swift/SplashAnimiationDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-Swift.xcodeproj/xcuserdata/KittenYang.xcuserdatad/xcschemes/xcschememanagement.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | SchemeUserState
6 |
7 | UIDynamicsDemo-Swift.xcscheme
8 |
9 | orderHint
10 | 0
11 |
12 |
13 | SuppressBuildableAutocreation
14 |
15 | 5F85F91F1C495F580062A057
16 |
17 | primary
18 |
19 |
20 | 5F85F9331C495F590062A057
21 |
22 | primary
23 |
24 |
25 | 5F85F93E1C495F590062A057
26 |
27 | primary
28 |
29 |
30 |
31 |
32 |
33 |
--------------------------------------------------------------------------------
/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-Swift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-Swift/Assets.xcassets/lockScreen.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "Screenshot_2015-09-07-03-37-02-124_锁屏.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-Swift/Assets.xcassets/lockScreen.imageset/Screenshot_2015-09-07-03-37-02-124_锁屏.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-Swift/Assets.xcassets/lockScreen.imageset/Screenshot_2015-09-07-03-37-02-124_锁屏.png
--------------------------------------------------------------------------------
/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/UIDynamicsDemo-Swift/UIDynamicsDemo-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift.xcodeproj/project.xcworkspace/xcuserdata/KittenYang.xcuserdatad/UserInterfaceState.xcuserstate
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/1.imageset/3.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/1.imageset/3.png
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/1.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "3.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/2.imageset/1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/2.imageset/1.png
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/2.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "1.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/3.imageset/2.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/3.imageset/2.png
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/3.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "2.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/4.imageset/4.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/4.imageset/4.png
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/4.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "4.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/5.imageset/5.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/5.imageset/5.png
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/5.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "5.png",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "info" : {
3 | "version" : 1,
4 | "author" : "xcode"
5 | }
6 | }
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/poster.imageset/Contents.json:
--------------------------------------------------------------------------------
1 | {
2 | "images" : [
3 | {
4 | "idiom" : "universal",
5 | "scale" : "1x"
6 | },
7 | {
8 | "idiom" : "universal",
9 | "filename" : "interstellar3.jpg",
10 | "scale" : "2x"
11 | },
12 | {
13 | "idiom" : "universal",
14 | "scale" : "3x"
15 | }
16 | ],
17 | "info" : {
18 | "version" : 1,
19 | "author" : "xcode"
20 | }
21 | }
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/poster.imageset/interstellar3.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/KittenYang/A-GUIDE-TO-iOS-ANIMATION/38ba4eb87e003213c94187d1f0f06d9146606f89/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/Assets.xcassets/poster.imageset/interstellar3.jpg
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-Swift/ViewController.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ViewController.swift
3 | // tvOSCardAnimation-Swift
4 | //
5 | // Created by Kitten Yang on 1/15/16.
6 | // Copyright © 2016 Kitten Yang. All rights reserved.
7 | //
8 |
9 | import UIKit
10 |
11 | class ViewController: UIViewController {
12 |
13 | override func viewDidLoad() {
14 | super.viewDidLoad()
15 |
16 | let cardView = tvOSCardView()
17 | cardView.center = view.center
18 | cardView.bounds = CGRect(x: 0, y: 0, width: 150, height: 200)
19 | view.addSubview(cardView)
20 |
21 | }
22 |
23 | override func didReceiveMemoryWarning() {
24 | super.didReceiveMemoryWarning()
25 | }
26 |
27 |
28 | }
29 |
30 |
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-SwiftTests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------
/Swift Version/tvOSCardAnimation-Swift/tvOSCardAnimation-SwiftUITests/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | en
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | BNDL
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleSignature
20 | ????
21 | CFBundleVersion
22 | 1
23 |
24 |
25 |
--------------------------------------------------------------------------------