├── Demo.gif ├── Podfile.lock ├── Pods ├── Headers │ ├── Private │ │ └── pop │ │ │ ├── FloatConversion.h │ │ │ ├── POP.h │ │ │ ├── POPAction.h │ │ │ ├── POPAnimatableProperty.h │ │ │ ├── POPAnimation.h │ │ │ ├── POPAnimationEvent.h │ │ │ ├── POPAnimationEventInternal.h │ │ │ ├── POPAnimationExtras.h │ │ │ ├── POPAnimationInternal.h │ │ │ ├── POPAnimationPrivate.h │ │ │ ├── POPAnimationRuntime.h │ │ │ ├── POPAnimationTracer.h │ │ │ ├── POPAnimationTracerInternal.h │ │ │ ├── POPAnimator.h │ │ │ ├── POPAnimatorPrivate.h │ │ │ ├── POPBasicAnimation.h │ │ │ ├── POPBasicAnimationInternal.h │ │ │ ├── POPCGUtils.h │ │ │ ├── POPCustomAnimation.h │ │ │ ├── POPDecayAnimation.h │ │ │ ├── POPDecayAnimationInternal.h │ │ │ ├── POPDefines.h │ │ │ ├── POPGeometry.h │ │ │ ├── POPLayerExtras.h │ │ │ ├── POPMath.h │ │ │ ├── POPPropertyAnimation.h │ │ │ ├── POPPropertyAnimationInternal.h │ │ │ ├── POPSpringAnimation.h │ │ │ ├── POPSpringAnimationInternal.h │ │ │ ├── POPSpringSolver.h │ │ │ ├── POPVector.h │ │ │ ├── TransformationMatrix.h │ │ │ └── UnitBezier.h │ └── Public │ │ └── pop │ │ ├── POP.h │ │ ├── POPAnimatableProperty.h │ │ ├── POPAnimation.h │ │ ├── POPAnimationEvent.h │ │ ├── POPAnimationExtras.h │ │ ├── POPAnimationTracer.h │ │ ├── POPAnimator.h │ │ ├── POPBasicAnimation.h │ │ ├── POPCustomAnimation.h │ │ ├── POPDecayAnimation.h │ │ ├── POPDefines.h │ │ ├── POPGeometry.h │ │ ├── POPLayerExtras.h │ │ ├── POPPropertyAnimation.h │ │ └── POPSpringAnimation.h ├── Local Podspecs │ └── pop.podspec.json ├── Manifest.lock ├── Pods.xcodeproj │ ├── project.pbxproj │ └── xcuserdata │ │ ├── MartinRGB.xcuserdatad │ │ └── xcschemes │ │ │ ├── Pods-pop.xcscheme │ │ │ ├── Pods.xcscheme │ │ │ └── xcschememanagement.plist │ │ └── a1.xcuserdatad │ │ └── xcschemes │ │ ├── Pods-pop.xcscheme │ │ ├── Pods.xcscheme │ │ └── xcschememanagement.plist ├── Target Support Files │ ├── Pods-pop │ │ ├── Pods-pop-Private.xcconfig │ │ ├── Pods-pop-dummy.m │ │ ├── Pods-pop-prefix.pch │ │ └── Pods-pop.xcconfig │ └── Pods │ │ ├── Pods-acknowledgements.markdown │ │ ├── Pods-acknowledgements.plist │ │ ├── Pods-dummy.m │ │ ├── Pods-environment.h │ │ ├── Pods-resources.sh │ │ ├── Pods.debug.xcconfig │ │ └── Pods.release.xcconfig └── pop │ ├── LICENSE │ ├── README.md │ └── pop │ ├── POP.h │ ├── POPAction.h │ ├── POPAnimatableProperty.h │ ├── POPAnimatableProperty.mm │ ├── POPAnimation.h │ ├── POPAnimation.mm │ ├── POPAnimationEvent.h │ ├── POPAnimationEvent.mm │ ├── POPAnimationEventInternal.h │ ├── POPAnimationExtras.h │ ├── POPAnimationExtras.mm │ ├── POPAnimationInternal.h │ ├── POPAnimationPrivate.h │ ├── POPAnimationRuntime.h │ ├── POPAnimationRuntime.mm │ ├── POPAnimationTracer.h │ ├── POPAnimationTracer.mm │ ├── POPAnimationTracerInternal.h │ ├── POPAnimator.h │ ├── POPAnimator.mm │ ├── POPAnimatorPrivate.h │ ├── POPBasicAnimation.h │ ├── POPBasicAnimation.mm │ ├── POPBasicAnimationInternal.h │ ├── POPCGUtils.h │ ├── POPCGUtils.mm │ ├── POPCustomAnimation.h │ ├── POPCustomAnimation.mm │ ├── POPDecayAnimation.h │ ├── POPDecayAnimation.mm │ ├── POPDecayAnimationInternal.h │ ├── POPDefines.h │ ├── POPGeometry.h │ ├── POPGeometry.mm │ ├── POPLayerExtras.h │ ├── POPLayerExtras.mm │ ├── POPMath.h │ ├── POPMath.mm │ ├── POPPropertyAnimation.h │ ├── POPPropertyAnimation.mm │ ├── POPPropertyAnimationInternal.h │ ├── POPSpringAnimation.h │ ├── POPSpringAnimation.mm │ ├── POPSpringAnimationInternal.h │ ├── POPSpringSolver.h │ ├── POPVector.h │ ├── POPVector.mm │ └── WebCore │ ├── FloatConversion.h │ ├── TransformationMatrix.cpp │ ├── TransformationMatrix.h │ └── UnitBezier.h ├── README.md ├── Tabbar.xcodeproj ├── project.pbxproj ├── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcuserdata │ │ ├── MartinRGB.xcuserdatad │ │ └── UserInterfaceState.xcuserstate │ │ └── a1.xcuserdatad │ │ └── UserInterfaceState.xcuserstate └── xcuserdata │ ├── MartinRGB.xcuserdatad │ ├── xcdebugger │ │ └── Breakpoints_v2.xcbkptlist │ └── xcschemes │ │ ├── Tabbar.xcscheme │ │ └── xcschememanagement.plist │ └── a1.xcuserdatad │ └── xcschemes │ ├── Tabbar.xcscheme │ └── xcschememanagement.plist ├── Tabbar.xcworkspace ├── contents.xcworkspacedata ├── xcshareddata │ └── Tabbar.xccheckout └── xcuserdata │ ├── MartinRGB.xcuserdatad │ └── UserInterfaceState.xcuserstate │ └── a1.xcuserdatad │ ├── UserInterfaceState.xcuserstate │ └── xcdebugger │ └── Breakpoints_v2.xcbkptlist ├── Tabbar ├── AppDelegate.h ├── AppDelegate.m ├── Base.lproj │ ├── LaunchScreen.xib │ └── Main.storyboard ├── FifthViewController.h ├── FifthViewController.m ├── FirstViewController.h ├── FirstViewController.m ├── FourthViewController..m ├── FourthViewController.h ├── Images.xcassets │ ├── AppIcon.appiconset │ │ ├── Contents.json │ │ ├── Icon-29@2x.png │ │ ├── Icon-29@3x.png │ │ ├── Icon-40@2x.png │ │ ├── Icon-40@3x.png │ │ ├── Icon-60@2x.png │ │ └── Icon-60@3x.png │ ├── Page 1 │ │ ├── BG1.imageset │ │ │ ├── BG1.png │ │ │ ├── BG1@2x.png │ │ │ ├── BG1@3x.png │ │ │ └── Contents.json │ │ ├── C1.imageset │ │ │ ├── C1.png │ │ │ ├── C1@2x.png │ │ │ ├── C1@3x.png │ │ │ └── Contents.json │ │ ├── C2.imageset │ │ │ ├── C2.png │ │ │ ├── C2@2x.png │ │ │ ├── C2@3x.png │ │ │ └── Contents.json │ │ ├── C3.imageset │ │ │ ├── C3.png │ │ │ ├── C3@2x.png │ │ │ ├── C3@3x.png │ │ │ └── Contents.json │ │ ├── C4.imageset │ │ │ ├── C4.png │ │ │ ├── C4@2x.png │ │ │ ├── C4@3x.png │ │ │ └── Contents.json │ │ ├── C5.imageset │ │ │ ├── C5.png │ │ │ ├── C5@2x.png │ │ │ ├── C5@3x.png │ │ │ └── Contents.json │ │ └── NavDownloads.imageset │ │ │ ├── Contents.json │ │ │ ├── NavDownloads.png │ │ │ ├── NavDownloads@2x.png │ │ │ └── NavDownloads@3x.png │ ├── Page 2 │ │ ├── BG2.imageset │ │ │ ├── BG2.png │ │ │ ├── BG2@2x.png │ │ │ ├── BG2@3x.png │ │ │ └── Contents.json │ │ ├── Card 1.imageset │ │ │ ├── Card 1.png │ │ │ ├── Card 1@2x.png │ │ │ ├── Card 1@3x.png │ │ │ └── Contents.json │ │ ├── Card 2.imageset │ │ │ ├── Card 2.png │ │ │ ├── Card 2@2x.png │ │ │ ├── Card 2@3x.png │ │ │ └── Contents.json │ │ └── NavStar.imageset │ │ │ ├── Contents.json │ │ │ ├── NavStar.png │ │ │ ├── NavStar@2x.png │ │ │ └── NavStar@3x.png │ ├── Page 3 │ │ ├── BG3.imageset │ │ │ ├── BG3.png │ │ │ ├── BG3@2x.png │ │ │ ├── BG3@3x.png │ │ │ └── Contents.json │ │ ├── I1.imageset │ │ │ ├── Contents.json │ │ │ ├── I1.png │ │ │ ├── I1@2x.png │ │ │ └── I1@3x.png │ │ ├── I2.imageset │ │ │ ├── Contents.json │ │ │ ├── I2.png │ │ │ ├── I2@2x.png │ │ │ └── I2@3x.png │ │ ├── I3.imageset │ │ │ ├── Contents.json │ │ │ ├── I3.png │ │ │ ├── I3@2x.png │ │ │ └── I3@3x.png │ │ ├── I4.imageset │ │ │ ├── Contents.json │ │ │ ├── I4.png │ │ │ ├── I4@2x.png │ │ │ └── I4@3x.png │ │ ├── I5.imageset │ │ │ ├── Contents.json │ │ │ ├── I5.png │ │ │ ├── I5@2x.png │ │ │ └── I5@3x.png │ │ ├── I6.imageset │ │ │ ├── Contents.json │ │ │ ├── I6.png │ │ │ ├── I6@2x.png │ │ │ └── I6@3x.png │ │ ├── Line.imageset │ │ │ ├── Contents.json │ │ │ ├── Line.png │ │ │ ├── Line@2x.png │ │ │ └── Line@3x.png │ │ ├── NavStore.imageset │ │ │ ├── Contents.json │ │ │ ├── NavStore.png │ │ │ ├── NavStore@2x.png │ │ │ └── NavStore@3x.png │ │ ├── P3Text.imageset │ │ │ ├── Contents.json │ │ │ ├── P3Text.png │ │ │ ├── P3Text@2x.png │ │ │ └── P3Text@3x.png │ │ └── Top │ │ │ ├── 3D.imageset │ │ │ ├── 3D.png │ │ │ ├── 3D@2x.png │ │ │ ├── 3D@3x.png │ │ │ └── Contents.json │ │ │ ├── Analyzeloop.imageset │ │ │ ├── Analyzeloop.png │ │ │ ├── Analyzeloop@2x.png │ │ │ ├── Analyzeloop@3x.png │ │ │ └── Contents.json │ │ │ ├── Bandage.imageset │ │ │ ├── Bandage.png │ │ │ ├── Bandage@2x.png │ │ │ ├── Bandage@3x.png │ │ │ └── Contents.json │ │ │ ├── Bill.imageset │ │ │ ├── Bill.png │ │ │ ├── Bill@2x.png │ │ │ ├── Bill@3x.png │ │ │ └── Contents.json │ │ │ ├── Blitzcam.imageset │ │ │ ├── Blitzcam.png │ │ │ ├── Blitzcam@2x.png │ │ │ ├── Blitzcam@3x.png │ │ │ └── Contents.json │ │ │ ├── Browsercode.imageset │ │ │ ├── Browsercode.png │ │ │ ├── Browsercode@2x.png │ │ │ ├── Browsercode@3x.png │ │ │ └── Contents.json │ │ │ ├── Browserscript.imageset │ │ │ ├── Browserscript.png │ │ │ ├── Browserscript@2x.png │ │ │ ├── Browserscript@3x.png │ │ │ └── Contents.json │ │ │ ├── Calculator.imageset │ │ │ ├── Calculator.png │ │ │ ├── Calculator@2x.png │ │ │ ├── Calculator@3x.png │ │ │ └── Contents.json │ │ │ ├── Chart.imageset │ │ │ ├── Chart.png │ │ │ ├── Chart@2x.png │ │ │ ├── Chart@3x.png │ │ │ └── Contents.json │ │ │ ├── DJ.imageset │ │ │ ├── Contents.json │ │ │ ├── DJ.png │ │ │ ├── DJ@2x.png │ │ │ └── DJ@3x.png │ │ │ ├── Drums.imageset │ │ │ ├── Contents.json │ │ │ ├── Drums.png │ │ │ ├── Drums@2x.png │ │ │ └── Drums@3x.png │ │ │ ├── Financestat.imageset │ │ │ ├── Contents.json │ │ │ ├── Financestat.png │ │ │ ├── Financestat@2x.png │ │ │ └── Financestat@3x.png │ │ │ ├── Jesus.imageset │ │ │ ├── Contents.json │ │ │ ├── Jesus.png │ │ │ ├── Jesus@2x.png │ │ │ └── Jesus@3x.png │ │ │ ├── Moviecam.imageset │ │ │ ├── Contents.json │ │ │ ├── Moviecam.png │ │ │ ├── Moviecam@2x.png │ │ │ └── Moviecam@3x.png │ │ │ ├── Negativephoto.imageset │ │ │ ├── Contents.json │ │ │ ├── Negativephoto.png │ │ │ ├── Negativephoto@2x.png │ │ │ └── Negativephoto@3x.png │ │ │ ├── Oval.imageset │ │ │ ├── Contents.json │ │ │ ├── Oval.png │ │ │ ├── Oval@2x.png │ │ │ └── Oval@3x.png │ │ │ ├── PCboard.imageset │ │ │ ├── Contents.json │ │ │ ├── PCboard.png │ │ │ ├── PCboard@2x.png │ │ │ └── PCboard@3x.png │ │ │ ├── Spaceship.imageset │ │ │ ├── Contents.json │ │ │ ├── Spaceship.png │ │ │ ├── Spaceship@2x.png │ │ │ └── Spaceship@3x.png │ │ │ └── Tie.imageset │ │ │ ├── Contents.json │ │ │ ├── Tie.png │ │ │ ├── Tie@2x.png │ │ │ └── Tie@3x.png │ ├── Page 4 │ │ ├── BG4.imageset │ │ │ ├── BG4.png │ │ │ ├── BG4@2x.png │ │ │ ├── BG4@3x.png │ │ │ └── Contents.json │ │ ├── NavStatus.imageset │ │ │ ├── Contents.json │ │ │ ├── NavStatus.png │ │ │ ├── NavStatus@2x.png │ │ │ └── NavStatus@3x.png │ │ ├── SCard 1.imageset │ │ │ ├── Contents.json │ │ │ ├── SCard 1.png │ │ │ ├── SCard 1@2x.png │ │ │ └── SCard 1@3x.png │ │ ├── SCard2.imageset │ │ │ ├── Contents.json │ │ │ ├── SCard2.png │ │ │ ├── SCard2@2x.png │ │ │ └── SCard2@3x.png │ │ ├── t1.imageset │ │ │ ├── Contents.json │ │ │ ├── t1.png │ │ │ ├── t1@2x.png │ │ │ └── t1@3x.png │ │ ├── t2.imageset │ │ │ ├── Contents.json │ │ │ ├── t2.png │ │ │ ├── t2@2x.png │ │ │ └── t2@3x.png │ │ └── t3.imageset │ │ │ ├── Contents.json │ │ │ ├── t3.png │ │ │ ├── t3@2x.png │ │ │ └── t3@3x.png │ ├── Page 5 │ │ ├── Avatar.imageset │ │ │ ├── Avatar.png │ │ │ ├── Avatar@2x.png │ │ │ ├── Avatar@3x.png │ │ │ └── Contents.json │ │ ├── BG5.imageset │ │ │ ├── BG5.png │ │ │ ├── BG5@2x.png │ │ │ ├── BG5@3x.png │ │ │ └── Contents.json │ │ ├── MartinRGB.imageset │ │ │ ├── Contents.json │ │ │ ├── MartinRGB.png │ │ │ ├── MartinRGB@2x.png │ │ │ └── MartinRGB@3x.png │ │ ├── MartinRGB2.imageset │ │ │ ├── Contents.json │ │ │ ├── MartinRGB2.png │ │ │ ├── MartinRGB2@2x.png │ │ │ └── MartinRGB2@3x.png │ │ ├── NavSetting.imageset │ │ │ ├── Contents.json │ │ │ ├── NavSetting.png │ │ │ ├── NavSetting@2x.png │ │ │ └── NavSetting@3x.png │ │ ├── S1.imageset │ │ │ ├── Contents.json │ │ │ ├── S1.png │ │ │ ├── S1@2x.png │ │ │ └── S1@3x.png │ │ ├── S2.imageset │ │ │ ├── Contents.json │ │ │ ├── S2.png │ │ │ ├── S2@2x.png │ │ │ └── S2@3x.png │ │ ├── S3.imageset │ │ │ ├── Contents.json │ │ │ ├── S3.png │ │ │ ├── S3@2x.png │ │ │ └── S3@3x.png │ │ └── S4.imageset │ │ │ ├── Contents.json │ │ │ ├── S4.png │ │ │ ├── S4@2x.png │ │ │ └── S4@3x.png │ ├── TabBG.imageset │ │ ├── Contents.json │ │ ├── TabBG.png │ │ ├── TabBG@2x.png │ │ └── TabBG@3x.png │ └── whitespace.imageset │ │ ├── Contents.json │ │ ├── whitespace.png │ │ ├── whitespace@2x.png │ │ └── whitespace@3x.png ├── Info.plist ├── SecondViewController.h ├── SecondViewController.m ├── TabBarViewController.h ├── TabBarViewController.m ├── ThirdViewController.h ├── ThirdViewController.m └── main.m ├── TabbarTests ├── Info.plist └── TabbarTests.m └── podfile /Demo.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Demo.gif -------------------------------------------------------------------------------- /Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - pop (1.0.7) 3 | 4 | DEPENDENCIES: 5 | - pop (from `https://github.com/facebook/pop.git`) 6 | 7 | EXTERNAL SOURCES: 8 | pop: 9 | :git: https://github.com/facebook/pop.git 10 | 11 | CHECKOUT OPTIONS: 12 | pop: 13 | :commit: 3b260e74dd4b6af23d1efab118b43b48c86c16c0 14 | :git: https://github.com/facebook/pop.git 15 | 16 | SPEC CHECKSUMS: 17 | pop: 628ffc631644601567ee8bfaaaea493ebd7d0923 18 | 19 | COCOAPODS: 0.37.2 20 | -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/FloatConversion.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/WebCore/FloatConversion.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POP.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POP.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAction.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAction.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimatableProperty.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimatableProperty.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimationEvent.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationEvent.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimationEventInternal.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationEventInternal.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimationExtras.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationExtras.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimationInternal.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationInternal.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimationPrivate.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationPrivate.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimationRuntime.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationRuntime.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimationTracer.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationTracer.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimationTracerInternal.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationTracerInternal.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimator.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimator.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPAnimatorPrivate.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimatorPrivate.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPBasicAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPBasicAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPBasicAnimationInternal.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPBasicAnimationInternal.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPCGUtils.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPCGUtils.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPCustomAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPCustomAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPDecayAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPDecayAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPDecayAnimationInternal.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPDecayAnimationInternal.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPDefines.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPDefines.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPGeometry.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPGeometry.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPLayerExtras.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPLayerExtras.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPMath.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPMath.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPPropertyAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPPropertyAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPPropertyAnimationInternal.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPPropertyAnimationInternal.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPSpringAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPSpringAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPSpringAnimationInternal.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPSpringAnimationInternal.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPSpringSolver.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPSpringSolver.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/POPVector.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPVector.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/TransformationMatrix.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/WebCore/TransformationMatrix.h -------------------------------------------------------------------------------- /Pods/Headers/Private/pop/UnitBezier.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/WebCore/UnitBezier.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POP.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POP.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPAnimatableProperty.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimatableProperty.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPAnimationEvent.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationEvent.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPAnimationExtras.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationExtras.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPAnimationTracer.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimationTracer.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPAnimator.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPAnimator.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPBasicAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPBasicAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPCustomAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPCustomAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPDecayAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPDecayAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPDefines.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPDefines.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPGeometry.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPGeometry.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPLayerExtras.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPLayerExtras.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPPropertyAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPPropertyAnimation.h -------------------------------------------------------------------------------- /Pods/Headers/Public/pop/POPSpringAnimation.h: -------------------------------------------------------------------------------- 1 | ../../../pop/pop/POPSpringAnimation.h -------------------------------------------------------------------------------- /Pods/Local Podspecs/pop.podspec.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "pop", 3 | "version": "1.0.7", 4 | "license": { 5 | "type": "BSD" 6 | }, 7 | "homepage": "https://github.com/facebook/pop", 8 | "authors": { 9 | "Kimon Tsinteris": "kimon@mac.com" 10 | }, 11 | "summary": "Extensible animation framework for iOS and OS X.", 12 | "source": { 13 | "git": "https://github.com/facebook/pop.git", 14 | "tag": "1.0.7" 15 | }, 16 | "source_files": "pop/**/*.{h,m,mm,cpp}", 17 | "public_header_files": "pop/{POP,POPAnimatableProperty,POPAnimation,POPAnimationEvent,POPAnimationExtras,POPAnimationTracer,POPAnimator,POPBasicAnimation,POPCustomAnimation,POPDecayAnimation,POPDefines,POPGeometry,POPLayerExtras,POPPropertyAnimation,POPSpringAnimation}.h", 18 | "requires_arc": true, 19 | "social_media_url": "https://twitter.com/fbOpenSource", 20 | "libraries": "c++", 21 | "xcconfig": { 22 | "CLANG_CXX_LANGUAGE_STANDARD": "c++11", 23 | "CLANG_CXX_LIBRARY": "libc++" 24 | }, 25 | "platforms": { 26 | "ios": "6.0", 27 | "osx": "10.7" 28 | } 29 | } 30 | -------------------------------------------------------------------------------- /Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - pop (1.0.7) 3 | 4 | DEPENDENCIES: 5 | - pop (from `https://github.com/facebook/pop.git`) 6 | 7 | EXTERNAL SOURCES: 8 | pop: 9 | :git: https://github.com/facebook/pop.git 10 | 11 | CHECKOUT OPTIONS: 12 | pop: 13 | :commit: 3b260e74dd4b6af23d1efab118b43b48c86c16c0 14 | :git: https://github.com/facebook/pop.git 15 | 16 | SPEC CHECKSUMS: 17 | pop: 628ffc631644601567ee8bfaaaea493ebd7d0923 18 | 19 | COCOAPODS: 0.37.2 20 | -------------------------------------------------------------------------------- /Pods/Pods.xcodeproj/xcuserdata/MartinRGB.xcuserdatad/xcschemes/Pods-pop.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 42 | 43 | 44 | 45 | 51 | 52 | 54 | 55 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /Pods/Pods.xcodeproj/xcuserdata/MartinRGB.xcuserdatad/xcschemes/Pods.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 42 | 43 | 44 | 45 | 51 | 52 | 54 | 55 | 58 | 59 | 60 | -------------------------------------------------------------------------------- /Pods/Pods.xcodeproj/xcuserdata/MartinRGB.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Pods-pop.xcscheme 8 | 9 | isShown 10 | 11 | 12 | Pods.xcscheme 13 | 14 | isShown 15 | 16 | 17 | 18 | SuppressBuildableAutocreation 19 | 20 | 1A1D15DB25E2D3B872FFF901 21 | 22 | primary 23 | 24 | 25 | 6DFA6EE5B49D8D8899752E72 26 | 27 | primary 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /Pods/Pods.xcodeproj/xcuserdata/a1.xcuserdatad/xcschemes/Pods-pop.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 42 | 43 | 49 | 50 | 51 | 52 | 53 | 54 | 60 | 61 | 67 | 68 | 69 | 70 | 72 | 73 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /Pods/Pods.xcodeproj/xcuserdata/a1.xcuserdatad/xcschemes/Pods.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 32 | 33 | 42 | 43 | 49 | 50 | 51 | 52 | 53 | 54 | 60 | 61 | 67 | 68 | 69 | 70 | 72 | 73 | 76 | 77 | 78 | -------------------------------------------------------------------------------- /Pods/Pods.xcodeproj/xcuserdata/a1.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Pods-pop.xcscheme 8 | 9 | orderHint 10 | 2 11 | 12 | Pods.xcscheme 13 | 14 | orderHint 15 | 1 16 | 17 | 18 | SuppressBuildableAutocreation 19 | 20 | 1A1D15DB25E2D3B872FFF901 21 | 22 | primary 23 | 24 | 25 | 6DFA6EE5B49D8D8899752E72 26 | 27 | primary 28 | 29 | 30 | 31 | 32 | 33 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-pop/Pods-pop-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-pop.xcconfig" 2 | CLANG_CXX_LANGUAGE_STANDARD = ${PODS_POP_CLANG_CXX_LANGUAGE_STANDARD} 3 | CLANG_CXX_LIBRARY = ${PODS_POP_CLANG_CXX_LIBRARY} 4 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 5 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/pop" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/pop" 6 | OTHER_LDFLAGS = ${PODS_POP_OTHER_LDFLAGS} -ObjC 7 | PODS_ROOT = ${SRCROOT} 8 | SKIP_INSTALL = YES -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-pop/Pods-pop-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_pop : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_pop 5 | @end 6 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-pop/Pods-pop-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-environment.h" 6 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods-pop/Pods-pop.xcconfig: -------------------------------------------------------------------------------- 1 | PODS_POP_CLANG_CXX_LANGUAGE_STANDARD = c++11 2 | PODS_POP_CLANG_CXX_LIBRARY = libc++ 3 | PODS_POP_OTHER_LDFLAGS = -l"c++" -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods/Pods-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## pop 5 | 6 | BSD License 7 | 8 | For Pop software 9 | 10 | Copyright (c) 2014, Facebook, Inc. All rights reserved. 11 | 12 | Redistribution and use in source and binary forms, with or without modification, 13 | are permitted provided that the following conditions are met: 14 | 15 | * Redistributions of source code must retain the above copyright notice, this 16 | list of conditions and the following disclaimer. 17 | 18 | * Redistributions in binary form must reproduce the above copyright notice, 19 | this list of conditions and the following disclaimer in the documentation 20 | and/or other materials provided with the distribution. 21 | 22 | * Neither the name Facebook nor the names of its contributors may be used to 23 | endorse or promote products derived from this software without specific 24 | prior written permission. 25 | 26 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 27 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 28 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 29 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 30 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 31 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 32 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 33 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 34 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 35 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 36 | 37 | Generated by CocoaPods - http://cocoapods.org 38 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods/Pods-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | BSD License 18 | 19 | For Pop software 20 | 21 | Copyright (c) 2014, Facebook, Inc. All rights reserved. 22 | 23 | Redistribution and use in source and binary forms, with or without modification, 24 | are permitted provided that the following conditions are met: 25 | 26 | * Redistributions of source code must retain the above copyright notice, this 27 | list of conditions and the following disclaimer. 28 | 29 | * Redistributions in binary form must reproduce the above copyright notice, 30 | this list of conditions and the following disclaimer in the documentation 31 | and/or other materials provided with the distribution. 32 | 33 | * Neither the name Facebook nor the names of its contributors may be used to 34 | endorse or promote products derived from this software without specific 35 | prior written permission. 36 | 37 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 38 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 39 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 40 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 41 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 42 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 43 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 44 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 45 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 46 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 47 | 48 | Title 49 | pop 50 | Type 51 | PSGroupSpecifier 52 | 53 | 54 | FooterText 55 | Generated by CocoaPods - http://cocoapods.org 56 | Title 57 | 58 | Type 59 | PSGroupSpecifier 60 | 61 | 62 | StringsTable 63 | Acknowledgements 64 | Title 65 | Acknowledgements 66 | 67 | 68 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods/Pods-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods : NSObject 3 | @end 4 | @implementation PodsDummy_Pods 5 | @end 6 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods/Pods-environment.h: -------------------------------------------------------------------------------- 1 | 2 | // To check if a library is compiled with CocoaPods you 3 | // can use the `COCOAPODS` macro definition which is 4 | // defined in the xcconfigs so it is available in 5 | // headers also when they are imported in the client 6 | // project. 7 | 8 | 9 | // pop 10 | #define COCOAPODS_POD_AVAILABLE_pop 11 | #define COCOAPODS_VERSION_MAJOR_pop 1 12 | #define COCOAPODS_VERSION_MINOR_pop 0 13 | #define COCOAPODS_VERSION_PATCH_pop 7 14 | 15 | -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods/Pods.debug.xcconfig: -------------------------------------------------------------------------------- 1 | CLANG_CXX_LANGUAGE_STANDARD = c++11 2 | CLANG_CXX_LIBRARY = libc++ 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/pop" 5 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/pop" 6 | OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-pop" -l"c++" 7 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 8 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Pods/Target Support Files/Pods/Pods.release.xcconfig: -------------------------------------------------------------------------------- 1 | CLANG_CXX_LANGUAGE_STANDARD = c++11 2 | CLANG_CXX_LIBRARY = libc++ 3 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 4 | HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/pop" 5 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/pop" 6 | OTHER_LDFLAGS = $(inherited) -ObjC -l"Pods-pop" -l"c++" 7 | OTHER_LIBTOOLFLAGS = $(OTHER_LDFLAGS) 8 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Pods/pop/LICENSE: -------------------------------------------------------------------------------- 1 | BSD License 2 | 3 | For Pop software 4 | 5 | Copyright (c) 2014, Facebook, Inc. All rights reserved. 6 | 7 | Redistribution and use in source and binary forms, with or without modification, 8 | are permitted provided that the following conditions are met: 9 | 10 | * Redistributions of source code must retain the above copyright notice, this 11 | list of conditions and the following disclaimer. 12 | 13 | * Redistributions in binary form must reproduce the above copyright notice, 14 | this list of conditions and the following disclaimer in the documentation 15 | and/or other materials provided with the distribution. 16 | 17 | * Neither the name Facebook nor the names of its contributors may be used to 18 | endorse or promote products derived from this software without specific 19 | prior written permission. 20 | 21 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 22 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 23 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 24 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR 25 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 26 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 27 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 28 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 29 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 30 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 31 | -------------------------------------------------------------------------------- /Pods/pop/pop/POP.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #ifndef POP_POP_H 11 | #define POP_POP_H 12 | 13 | #import 14 | 15 | #import 16 | #import 17 | #import 18 | #import 19 | #import 20 | #import 21 | #import 22 | #import 23 | #import 24 | #import 25 | #import 26 | #import 27 | #import 28 | 29 | #endif /* POP_POP_H */ 30 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAction.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #ifndef POPACTION_H 11 | #define POPACTION_H 12 | 13 | #import 14 | 15 | #import 16 | 17 | #ifdef __cplusplus 18 | 19 | namespace POP { 20 | 21 | /** 22 | @abstract Disables Core Animation actions using RAII. 23 | @discussion The disablement of actions is scoped to the current transaction. 24 | */ 25 | class ActionDisabler 26 | { 27 | BOOL state; 28 | 29 | public: 30 | ActionDisabler() POP_NOTHROW 31 | { 32 | state = [CATransaction disableActions]; 33 | [CATransaction setDisableActions:YES]; 34 | } 35 | 36 | ~ActionDisabler() 37 | { 38 | [CATransaction setDisableActions:state]; 39 | } 40 | }; 41 | 42 | /** 43 | @abstract Enables Core Animation actions using RAII. 44 | @discussion The enablement of actions is scoped to the current transaction. 45 | */ 46 | class ActionEnabler 47 | { 48 | BOOL state; 49 | 50 | public: 51 | ActionEnabler() POP_NOTHROW 52 | { 53 | state = [CATransaction disableActions]; 54 | [CATransaction setDisableActions:NO]; 55 | } 56 | 57 | ~ActionEnabler() 58 | { 59 | [CATransaction setDisableActions:state]; 60 | } 61 | }; 62 | 63 | } 64 | 65 | #endif /* __cplusplus */ 66 | 67 | #endif /* POPACTION_H */ 68 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimationEvent.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | /** 13 | @abstract Enumeraton of animation event types. 14 | */ 15 | typedef NS_ENUM(NSUInteger, POPAnimationEventType) { 16 | kPOPAnimationEventPropertyRead = 0, 17 | kPOPAnimationEventPropertyWrite, 18 | kPOPAnimationEventToValueUpdate, 19 | kPOPAnimationEventFromValueUpdate, 20 | kPOPAnimationEventVelocityUpdate, 21 | kPOPAnimationEventBouncinessUpdate, 22 | kPOPAnimationEventSpeedUpdate, 23 | kPOPAnimationEventFrictionUpdate, 24 | kPOPAnimationEventMassUpdate, 25 | kPOPAnimationEventTensionUpdate, 26 | kPOPAnimationEventDidStart, 27 | kPOPAnimationEventDidStop, 28 | kPOPAnimationEventDidReachToValue, 29 | kPOPAnimationEventAutoreversed 30 | }; 31 | 32 | /** 33 | @abstract The base animation event class. 34 | */ 35 | @interface POPAnimationEvent : NSObject 36 | 37 | /** 38 | @abstract The event type. See {@ref POPAnimationEventType} for possible values. 39 | */ 40 | @property (readonly, nonatomic, assign) POPAnimationEventType type; 41 | 42 | /** 43 | @abstract The time of event. 44 | */ 45 | @property (readonly, nonatomic, assign) CFTimeInterval time; 46 | 47 | /** 48 | @abstract Optional string describing the animation at time of event. 49 | */ 50 | @property (readonly, nonatomic, copy) NSString *animationDescription; 51 | 52 | @end 53 | 54 | /** 55 | @abstract An animation event subclass for recording value and velocity. 56 | */ 57 | @interface POPAnimationValueEvent : POPAnimationEvent 58 | 59 | /** 60 | @abstract The value recorded. 61 | */ 62 | @property (readonly, nonatomic, strong) id value; 63 | 64 | /** 65 | @abstract The velocity recorded, if any. 66 | */ 67 | @property (readonly, nonatomic, strong) id velocity; 68 | 69 | @end 70 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimationEvent.mm: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "POPAnimationEvent.h" 11 | #import "POPAnimationEventInternal.h" 12 | 13 | static NSString *stringFromType(POPAnimationEventType aType) 14 | { 15 | switch (aType) { 16 | case kPOPAnimationEventPropertyRead: 17 | return @"read"; 18 | case kPOPAnimationEventPropertyWrite: 19 | return @"write"; 20 | case kPOPAnimationEventToValueUpdate: 21 | return @"toValue"; 22 | case kPOPAnimationEventFromValueUpdate: 23 | return @"fromValue"; 24 | case kPOPAnimationEventVelocityUpdate: 25 | return @"velocity"; 26 | case kPOPAnimationEventSpeedUpdate: 27 | return @"speed"; 28 | case kPOPAnimationEventBouncinessUpdate: 29 | return @"bounciness"; 30 | case kPOPAnimationEventFrictionUpdate: 31 | return @"friction"; 32 | case kPOPAnimationEventMassUpdate: 33 | return @"mass"; 34 | case kPOPAnimationEventTensionUpdate: 35 | return @"tension"; 36 | case kPOPAnimationEventDidStart: 37 | return @"didStart"; 38 | case kPOPAnimationEventDidStop: 39 | return @"didStop"; 40 | case kPOPAnimationEventDidReachToValue: 41 | return @"didReachToValue"; 42 | case kPOPAnimationEventAutoreversed: 43 | return @"autoreversed"; 44 | default: 45 | return nil; 46 | } 47 | } 48 | 49 | @implementation POPAnimationEvent 50 | @synthesize type = _type; 51 | @synthesize time = _time; 52 | @synthesize animationDescription = _animationDescription; 53 | 54 | - (instancetype)initWithType:(POPAnimationEventType)aType time:(CFTimeInterval)aTime 55 | { 56 | self = [super init]; 57 | if (nil != self) { 58 | _type = aType; 59 | _time = aTime; 60 | } 61 | return self; 62 | } 63 | 64 | - (NSString *)description 65 | { 66 | NSMutableString *s = [NSMutableString stringWithFormat:@""]; 69 | return s; 70 | } 71 | 72 | // subclass override 73 | - (void)_appendDescription:(NSMutableString *)s 74 | { 75 | if (0 != _animationDescription.length) { 76 | [s appendFormat:@"; animation = %@", _animationDescription]; 77 | } 78 | } 79 | 80 | @end 81 | 82 | @implementation POPAnimationValueEvent 83 | @synthesize value = _value; 84 | @synthesize velocity = _velocity; 85 | 86 | - (instancetype)initWithType:(POPAnimationEventType)aType time:(CFTimeInterval)aTime value:(id)aValue 87 | { 88 | self = [self initWithType:aType time:aTime]; 89 | if (nil != self) { 90 | _value = aValue; 91 | } 92 | return self; 93 | } 94 | 95 | - (void)_appendDescription:(NSMutableString *)s 96 | { 97 | [super _appendDescription:s]; 98 | 99 | if (nil != _value) { 100 | [s appendFormat:@"; value = %@", _value]; 101 | } 102 | 103 | if (nil != _velocity) { 104 | [s appendFormat:@"; velocity = %@", _velocity]; 105 | } 106 | } 107 | 108 | @end 109 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimationEventInternal.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import "POPAnimationEvent.h" 13 | 14 | @interface POPAnimationEvent () 15 | 16 | /** 17 | @abstract Default initializer. 18 | */ 19 | - (instancetype)initWithType:(POPAnimationEventType)type time:(CFTimeInterval)time; 20 | 21 | /** 22 | @abstract Readwrite redefinition of public property. 23 | */ 24 | @property (readwrite, nonatomic, copy) NSString *animationDescription; 25 | 26 | @end 27 | 28 | @interface POPAnimationValueEvent () 29 | 30 | /** 31 | @abstract Default initializer. 32 | */ 33 | - (instancetype)initWithType:(POPAnimationEventType)type time:(CFTimeInterval)time value:(id)value; 34 | 35 | /** 36 | @abstract Readwrite redefinition of public property. 37 | */ 38 | @property (readwrite, nonatomic, strong) id velocity; 39 | 40 | @end 41 | 42 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimationExtras.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | #import 14 | 15 | /** 16 | @abstract The current drag coefficient. 17 | @discussion A value greater than 1.0 indicates Simulator slow-motion animations are enabled. Defaults to 1.0. 18 | */ 19 | extern CGFloat POPAnimationDragCoefficient(); 20 | 21 | @interface CAAnimation (POPAnimationExtras) 22 | 23 | /** 24 | @abstract Apply the current drag coefficient to animation speed. 25 | @discussion Convenience utility to respect Simulator slow-motion animation settings. 26 | */ 27 | - (void)pop_applyDragCoefficient; 28 | 29 | @end 30 | 31 | @interface POPSpringAnimation (POPAnimationExtras) 32 | 33 | /** 34 | @abstract Converts from spring bounciness and speed to tension, friction and mass dynamics values. 35 | */ 36 | + (void)convertBounciness:(CGFloat)bounciness speed:(CGFloat)speed toTension:(CGFloat *)outTension friction:(CGFloat *)outFriction mass:(CGFloat *)outMass; 37 | 38 | /** 39 | @abstract Converts from dynamics tension, friction and mass to spring bounciness and speed values. 40 | */ 41 | + (void)convertTension:(CGFloat)tension friction:(CGFloat)friction toBounciness:(CGFloat *)outBounciness speed:(CGFloat *)outSpeed; 42 | 43 | @end 44 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimationPrivate.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #define POP_ANIMATION_FRICTION_FOR_QC_FRICTION(qcFriction) (25.0 + (((qcFriction - 8.0) / 2.0) * (25.0 - 19.0))) 13 | #define POP_ANIMATION_TENSION_FOR_QC_TENSION(qcTension) (194.0 + (((qcTension - 30.0) / 50.0) * (375.0 - 194.0))) 14 | 15 | #define QC_FRICTION_FOR_POP_ANIMATION_FRICTION(fbFriction) (8.0 + 2.0 * ((fbFriction - 25.0)/(25.0 - 19.0))) 16 | #define QC_TENSION_FOR_POP_ANIMATION_TENSION(fbTension) (30.0 + 50.0 * ((fbTension - 194.0)/(375.0 - 194.0))) 17 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimationRuntime.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | #import "POPVector.h" 15 | 16 | enum POPValueType 17 | { 18 | kPOPValueUnknown = 0, 19 | kPOPValueInteger, 20 | kPOPValueFloat, 21 | kPOPValuePoint, 22 | kPOPValueSize, 23 | kPOPValueRect, 24 | kPOPValueEdgeInsets, 25 | kPOPValueAffineTransform, 26 | kPOPValueTransform, 27 | kPOPValueRange, 28 | kPOPValueColor, 29 | kPOPValueSCNVector3, 30 | kPOPValueSCNVector4, 31 | }; 32 | 33 | using namespace POP; 34 | 35 | /** 36 | Returns value type based on objc type description, given list of supported value types and length. 37 | */ 38 | extern POPValueType POPSelectValueType(const char *objctype, const POPValueType *types, size_t length); 39 | 40 | /** 41 | Returns value type based on objc object, given a list of supported value types and length. 42 | */ 43 | extern POPValueType POPSelectValueType(id obj, const POPValueType *types, size_t length); 44 | 45 | /** 46 | Array of all value types. 47 | */ 48 | extern const POPValueType kPOPAnimatableAllTypes[12]; 49 | 50 | /** 51 | Array of all value types supported for animation. 52 | */ 53 | extern const POPValueType kPOPAnimatableSupportTypes[10]; 54 | 55 | /** 56 | Returns a string description of a value type. 57 | */ 58 | extern NSString *POPValueTypeToString(POPValueType t); 59 | 60 | /** 61 | Returns a mutable dictionary of weak pointer keys to weak pointer values. 62 | */ 63 | extern CFMutableDictionaryRef POPDictionaryCreateMutableWeakPointerToWeakPointer(NSUInteger capacity) CF_RETURNS_RETAINED; 64 | 65 | /** 66 | Returns a mutable dictionary of weak pointer keys to weak pointer values. 67 | */ 68 | extern CFMutableDictionaryRef POPDictionaryCreateMutableWeakPointerToStrongObject(NSUInteger capacity) CF_RETURNS_RETAINED; 69 | 70 | /** 71 | Box a vector. 72 | */ 73 | extern id POPBox(VectorConstRef vec, POPValueType type, bool force = false); 74 | 75 | /** 76 | Unbox a vector. 77 | */ 78 | extern VectorRef POPUnbox(id value, POPValueType &type, NSUInteger &count, bool validate); 79 | 80 | /** 81 | Read/write block typedefs for convenience. 82 | */ 83 | typedef void(^pop_animatable_read_block)(id obj, CGFloat *value); 84 | typedef void(^pop_animatable_write_block)(id obj, const CGFloat *value); 85 | 86 | /** 87 | Read object value and return a Vector4r. 88 | */ 89 | NS_INLINE Vector4r read_values(pop_animatable_read_block read, id obj, size_t count) 90 | { 91 | Vector4r vec = Vector4r::Zero(); 92 | if (0 == count) 93 | return vec; 94 | 95 | read(obj, vec.data()); 96 | 97 | return vec; 98 | } 99 | 100 | NS_INLINE NSString *POPStringFromBOOL(BOOL value) 101 | { 102 | return value ? @"YES" : @"NO"; 103 | } 104 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimationTracer.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | @class POPAnimation; 15 | 16 | /** 17 | @abstract Tracer of animation events to fasciliate unit testing & debugging. 18 | */ 19 | @interface POPAnimationTracer : NSObject 20 | 21 | /** 22 | @abstract Start recording events. 23 | */ 24 | - (void)start; 25 | 26 | /** 27 | @abstract Stop recording events. 28 | */ 29 | - (void)stop; 30 | 31 | /** 32 | @abstract Resets any recoded events. Continues recording events if already started. 33 | */ 34 | - (void)reset; 35 | 36 | /** 37 | @abstract Property representing all recorded events. 38 | @discussion Events are returned in order of occurence. 39 | */ 40 | @property (nonatomic, assign, readonly) NSArray *allEvents; 41 | 42 | /** 43 | @abstract Property representing all recorded write events for convenience. 44 | @discussion Events are returned in order of occurence. 45 | */ 46 | @property (nonatomic, assign, readonly) NSArray *writeEvents; 47 | 48 | /** 49 | @abstract Queries for events of specified type. 50 | @param type The type of event to return. 51 | @returns An array of events of specified type in order of occurence. 52 | */ 53 | - (NSArray *)eventsWithType:(POPAnimationEventType)type; 54 | 55 | /** 56 | @abstract Property indicating whether tracer should automatically log events and reset collection on animation completion. 57 | */ 58 | @property (nonatomic, assign) BOOL shouldLogAndResetOnCompletion; 59 | 60 | @end 61 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimationTracerInternal.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | @interface POPAnimationTracer (Internal) 15 | 16 | /** 17 | @abstract Designated initalizer. Pass the animation being traced. 18 | */ 19 | - (instancetype)initWithAnimation:(POPAnimation *)anAnim; 20 | 21 | /** 22 | @abstract Records read value. 23 | */ 24 | - (void)readPropertyValue:(id)aValue; 25 | 26 | /** 27 | @abstract Records write value. 28 | */ 29 | - (void)writePropertyValue:(id)aValue; 30 | 31 | /** 32 | Records to value update. 33 | */ 34 | - (void)updateToValue:(id)aValue; 35 | 36 | /** 37 | @abstract Records from value update. 38 | */ 39 | - (void)updateFromValue:(id)aValue; 40 | 41 | /** 42 | @abstract Records from value update. 43 | */ 44 | - (void)updateVelocity:(id)aValue; 45 | 46 | /** 47 | @abstract Records bounciness update. 48 | */ 49 | - (void)updateBounciness:(float)aFloat; 50 | 51 | /** 52 | @abstract Records speed update. 53 | */ 54 | - (void)updateSpeed:(float)aFloat; 55 | 56 | /** 57 | @abstract Records friction update. 58 | */ 59 | - (void)updateFriction:(float)aFloat; 60 | 61 | /** 62 | @abstract Records mass update. 63 | */ 64 | - (void)updateMass:(float)aFloat; 65 | 66 | /** 67 | @abstract Records tension update. 68 | */ 69 | - (void)updateTension:(float)aFloat; 70 | 71 | /** 72 | @abstract Records did add. 73 | */ 74 | - (void)didAdd; 75 | 76 | /** 77 | @abstract Records did start. 78 | */ 79 | - (void)didStart; 80 | 81 | /** 82 | @abstract Records did stop. 83 | */ 84 | - (void)didStop:(BOOL)finished; 85 | 86 | /** 87 | @abstract Records did reach to value. 88 | */ 89 | - (void)didReachToValue:(id)aValue; 90 | 91 | /** 92 | @abstract Records when an autoreverse animation takes place. 93 | */ 94 | - (void)autoreversed; 95 | 96 | @end 97 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimator.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @protocol POPAnimatorDelegate; 13 | 14 | /** 15 | @abstract The animator class renders animations. 16 | */ 17 | @interface POPAnimator : NSObject 18 | 19 | /** 20 | @abstract The shared animator instance. 21 | @discussion Consumers should generally use the shared instance in lieu of creating new instances. 22 | */ 23 | + (instancetype)sharedAnimator; 24 | 25 | /** 26 | @abstract The optional animator delegate. 27 | */ 28 | @property (weak, nonatomic) id delegate; 29 | 30 | @end 31 | 32 | /** 33 | @abstract The animator delegate. 34 | */ 35 | @protocol POPAnimatorDelegate 36 | 37 | /** 38 | @abstract Called on each frame before animation application. 39 | */ 40 | - (void)animatorWillAnimate:(POPAnimator *)animator; 41 | 42 | /** 43 | @abstract Called on each frame after animation application. 44 | */ 45 | - (void)animatorDidAnimate:(POPAnimator *)animator; 46 | 47 | @end 48 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPAnimatorPrivate.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @class POPAnimation; 13 | 14 | @protocol POPAnimatorObserving 15 | @required 16 | 17 | /** 18 | @abstract Called on each observer after animator has advanced. Core Animation actions are disabled by default. 19 | */ 20 | - (void)animatorDidAnimate:(POPAnimator *)animator; 21 | 22 | @end 23 | 24 | @interface POPAnimator () 25 | 26 | #if !TARGET_OS_IPHONE 27 | /** 28 | Determines whether or not to use a high priority background thread for animation updates. Using a background thread can result in faster, more responsive updates, but may be less compatible. Defaults to YES. 29 | */ 30 | + (BOOL)disableBackgroundThread; 31 | + (void)setDisableBackgroundThread:(BOOL)flag; 32 | #endif 33 | 34 | /** 35 | Used for externally driven animator instances. 36 | */ 37 | @property (assign, nonatomic) BOOL disableDisplayLink; 38 | 39 | /** 40 | Time used when starting animations. Defaults to 0 meaning current media time is used. Exposed for unit testing. 41 | */ 42 | @property (assign, nonatomic) CFTimeInterval beginTime; 43 | 44 | /** 45 | Exposed for unit testing. 46 | */ 47 | - (void)renderTime:(CFTimeInterval)time; 48 | 49 | /** 50 | Funnel methods for category additions. 51 | */ 52 | - (void)addAnimation:(POPAnimation *)anim forObject:(id)obj key:(NSString *)key; 53 | - (void)removeAllAnimationsForObject:(id)obj; 54 | - (void)removeAnimationForObject:(id)obj key:(NSString *)key; 55 | - (NSArray *)animationKeysForObject:(id)obj; 56 | - (POPAnimation *)animationForObject:(id)obj key:(NSString *)key; 57 | 58 | /** 59 | @abstract Add an animator observer. Observer will be notified of each subsequent animator advance until removal. 60 | */ 61 | - (void)addObserver:(id)observer; 62 | 63 | /** 64 | @abstract Remove an animator observer. 65 | */ 66 | - (void)removeObserver:(id)observer; 67 | 68 | @end 69 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPBasicAnimation.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | /** 13 | @abstract A concrete basic animation class. 14 | @discussion Animation is achieved through interpolation. 15 | */ 16 | @interface POPBasicAnimation : POPPropertyAnimation 17 | 18 | /** 19 | @abstract The designated initializer. 20 | @returns An instance of a basic animation. 21 | */ 22 | + (instancetype)animation; 23 | 24 | /** 25 | @abstract Convenience initializer that returns an animation with animatable property of name. 26 | @param name The name of the animatable property. 27 | @returns An instance of a basic animation configured with specified animatable property. 28 | */ 29 | + (instancetype)animationWithPropertyNamed:(NSString *)name; 30 | 31 | /** 32 | @abstract Convenience constructor. 33 | @returns Returns a basic animation with kCAMediaTimingFunctionDefault timing function. 34 | */ 35 | + (instancetype)defaultAnimation; 36 | 37 | /** 38 | @abstract Convenience constructor. 39 | @returns Returns a basic animation with kCAMediaTimingFunctionLinear timing function. 40 | */ 41 | + (instancetype)linearAnimation; 42 | 43 | /** 44 | @abstract Convenience constructor. 45 | @returns Returns a basic animation with kCAMediaTimingFunctionEaseIn timing function. 46 | */ 47 | + (instancetype)easeInAnimation; 48 | 49 | /** 50 | @abstract Convenience constructor. 51 | @returns Returns a basic animation with kCAMediaTimingFunctionEaseOut timing function. 52 | */ 53 | + (instancetype)easeOutAnimation; 54 | 55 | /** 56 | @abstract Convenience constructor. 57 | @returns Returns a basic animation with kCAMediaTimingFunctionEaseInEaseOut timing function. 58 | */ 59 | + (instancetype)easeInEaseOutAnimation; 60 | 61 | /** 62 | @abstract The duration in seconds. Defaults to 0.4. 63 | */ 64 | @property (assign, nonatomic) CFTimeInterval duration; 65 | 66 | /** 67 | @abstract A timing function defining the pacing of the animation. Defaults to nil indicating pacing according to kCAMediaTimingFunctionDefault. 68 | */ 69 | @property (strong, nonatomic) CAMediaTimingFunction *timingFunction; 70 | 71 | @end 72 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPBasicAnimation.mm: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "POPBasicAnimationInternal.h" 11 | 12 | @implementation POPBasicAnimation 13 | 14 | #undef __state 15 | #define __state ((POPBasicAnimationState *)_state) 16 | 17 | #pragma mark - Lifecycle 18 | 19 | + (instancetype)animation 20 | { 21 | return [[self alloc] init]; 22 | } 23 | 24 | + (instancetype)animationWithPropertyNamed:(NSString *)aName 25 | { 26 | POPBasicAnimation *anim = [self animation]; 27 | anim.property = [POPAnimatableProperty propertyWithName:aName]; 28 | return anim; 29 | } 30 | 31 | - (void)_initState 32 | { 33 | _state = new POPBasicAnimationState(self); 34 | } 35 | 36 | + (instancetype)linearAnimation 37 | { 38 | POPBasicAnimation *anim = [self animation]; 39 | anim.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionLinear]; 40 | return anim; 41 | } 42 | 43 | + (instancetype)easeInAnimation 44 | { 45 | POPBasicAnimation *anim = [self animation]; 46 | anim.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseIn]; 47 | return anim; 48 | } 49 | 50 | + (instancetype)easeOutAnimation 51 | { 52 | POPBasicAnimation *anim = [self animation]; 53 | anim.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut]; 54 | return anim; 55 | } 56 | 57 | + (instancetype)easeInEaseOutAnimation 58 | { 59 | POPBasicAnimation *anim = [self animation]; 60 | anim.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]; 61 | return anim; 62 | } 63 | 64 | + (instancetype)defaultAnimation 65 | { 66 | POPBasicAnimation *anim = [self animation]; 67 | anim.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionDefault]; 68 | return anim; 69 | } 70 | 71 | - (id)init 72 | { 73 | return [self _init]; 74 | } 75 | 76 | #pragma mark - Properties 77 | 78 | DEFINE_RW_PROPERTY(POPBasicAnimationState, duration, setDuration:, CFTimeInterval); 79 | DEFINE_RW_PROPERTY_OBJ(POPBasicAnimationState, timingFunction, setTimingFunction:, CAMediaTimingFunction*, __state->updatedTimingFunction();); 80 | 81 | #pragma mark - Utility 82 | 83 | - (void)_appendDescription:(NSMutableString *)s debug:(BOOL)debug 84 | { 85 | [super _appendDescription:s debug:debug]; 86 | if (__state->duration) 87 | [s appendFormat:@"; duration = %f", __state->duration]; 88 | } 89 | 90 | @end 91 | 92 | @implementation POPBasicAnimation (NSCopying) 93 | 94 | - (instancetype)copyWithZone:(NSZone *)zone { 95 | 96 | POPBasicAnimation *copy = [super copyWithZone:zone]; 97 | 98 | if (copy) { 99 | copy.duration = self.duration; 100 | copy.timingFunction = self.timingFunction; // not a 'copy', but timing functions are publicly immutable. 101 | } 102 | 103 | return copy; 104 | } 105 | 106 | @end -------------------------------------------------------------------------------- /Pods/pop/pop/POPBasicAnimationInternal.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "POPBasicAnimation.h" 11 | 12 | #import "POPPropertyAnimationInternal.h" 13 | 14 | // default animation duration 15 | static CGFloat const kPOPAnimationDurationDefault = 0.4; 16 | 17 | // progress threshold for computing done 18 | static CGFloat const kPOPProgressThreshold = 1e-6; 19 | 20 | static void interpolate(POPValueType valueType, NSUInteger count, const CGFloat *fromVec, const CGFloat *toVec, CGFloat *outVec, CGFloat p) 21 | { 22 | switch (valueType) { 23 | case kPOPValueInteger: 24 | case kPOPValueFloat: 25 | case kPOPValuePoint: 26 | case kPOPValueSize: 27 | case kPOPValueRect: 28 | case kPOPValueEdgeInsets: 29 | case kPOPValueColor: 30 | POPInterpolateVector(count, outVec, fromVec, toVec, p); 31 | break; 32 | default: 33 | NSCAssert(false, @"unhandled type %d", valueType); 34 | break; 35 | } 36 | } 37 | 38 | struct _POPBasicAnimationState : _POPPropertyAnimationState 39 | { 40 | CAMediaTimingFunction *timingFunction; 41 | double timingControlPoints[4]; 42 | CFTimeInterval duration; 43 | CFTimeInterval timeProgress; 44 | 45 | _POPBasicAnimationState(id __unsafe_unretained anim) : _POPPropertyAnimationState(anim), 46 | timingFunction(nil), 47 | timingControlPoints{0.}, 48 | duration(kPOPAnimationDurationDefault), 49 | timeProgress(0.) 50 | { 51 | type = kPOPAnimationBasic; 52 | } 53 | 54 | bool isDone() { 55 | if (_POPPropertyAnimationState::isDone()) { 56 | return true; 57 | } 58 | return timeProgress + kPOPProgressThreshold >= 1.; 59 | } 60 | 61 | void updatedTimingFunction() 62 | { 63 | float vec[4] = {0.}; 64 | [timingFunction getControlPointAtIndex:1 values:&vec[0]]; 65 | [timingFunction getControlPointAtIndex:2 values:&vec[2]]; 66 | for (NSUInteger idx = 0; idx < POP_ARRAY_COUNT(vec); idx++) { 67 | timingControlPoints[idx] = vec[idx]; 68 | } 69 | } 70 | 71 | bool advance(CFTimeInterval time, CFTimeInterval dt, id obj) { 72 | // default timing function 73 | if (!timingFunction) { 74 | ((POPBasicAnimation *)self).timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionDefault]; 75 | } 76 | 77 | // solve for normalized time, aka progresss [0, 1] 78 | CGFloat p = 1.0f; 79 | if (duration > 0.0f) { 80 | // cap local time to duration 81 | CFTimeInterval t = MIN(time - startTime, duration) / duration; 82 | p = POPTimingFunctionSolve(timingControlPoints, t, SOLVE_EPS(duration)); 83 | timeProgress = t; 84 | } else { 85 | timeProgress = 1.; 86 | } 87 | 88 | // interpolate and advance 89 | interpolate(valueType, valueCount, fromVec->data(), toVec->data(), currentVec->data(), p); 90 | progress = p; 91 | clampCurrentValue(); 92 | 93 | return true; 94 | } 95 | }; 96 | 97 | typedef struct _POPBasicAnimationState POPBasicAnimationState; 98 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPCustomAnimation.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | @class POPCustomAnimation; 13 | 14 | /** 15 | @abstract POPCustomAnimationBlock is the callback block of a custom animation. 16 | @discussion This block will be executed for each animation frame and should update the property or properties being animated based on current timing. 17 | @param target The object being animated. Reference the passed in target to help avoid retain loops. 18 | @param animation The custom animation instance. Use to determine the current and elapsed time since last callback. Reference the passed in animation to help avoid retain loops. 19 | @return Flag indicating whether the animation should continue animating. Return NO to indicate animation is done. 20 | */ 21 | typedef BOOL (^POPCustomAnimationBlock)(id target, POPCustomAnimation *animation); 22 | 23 | /** 24 | @abstract POPCustomAnimation is a concrete animation subclass for custom animations. 25 | */ 26 | @interface POPCustomAnimation : POPAnimation 27 | 28 | /** 29 | @abstract Creates and returns an initialized custom animation instance. 30 | @discussion This is the designated initializer. 31 | @param block The custom animation callback block. See {@ref POPCustomAnimationBlock}. 32 | @return The initialized custom animation instance. 33 | */ 34 | + (instancetype)animationWithBlock:(POPCustomAnimationBlock)block; 35 | 36 | /** 37 | @abstract The current animation time at time of callback. 38 | */ 39 | @property (readonly, nonatomic) CFTimeInterval currentTime; 40 | 41 | /** 42 | @abstract The elapsed animation time since last callback. 43 | */ 44 | @property (readonly, nonatomic) CFTimeInterval elapsedTime; 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPCustomAnimation.mm: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "POPAnimationInternal.h" 11 | 12 | #import "POPCustomAnimation.h" 13 | 14 | @interface POPCustomAnimation () 15 | @property (nonatomic, copy) POPCustomAnimationBlock animate; 16 | @end 17 | 18 | @implementation POPCustomAnimation 19 | @synthesize currentTime = _currentTime; 20 | @synthesize elapsedTime = _elapsedTime; 21 | @synthesize animate = _animate; 22 | 23 | + (instancetype)animationWithBlock:(BOOL(^)(id target, POPCustomAnimation *))block 24 | { 25 | POPCustomAnimation *b = [[self alloc] _init]; 26 | b.animate = block; 27 | return b; 28 | } 29 | 30 | - (id)_init 31 | { 32 | self = [super _init]; 33 | if (nil != self) { 34 | _state->type = kPOPAnimationCustom; 35 | } 36 | return self; 37 | } 38 | 39 | - (CFTimeInterval)beginTime 40 | { 41 | POPAnimationState *s = POPAnimationGetState(self); 42 | return s->startTime > 0 ? s->startTime : s->beginTime; 43 | } 44 | 45 | - (BOOL)_advance:(id)object currentTime:(CFTimeInterval)currentTime elapsedTime:(CFTimeInterval)elapsedTime 46 | { 47 | _currentTime = currentTime; 48 | _elapsedTime = elapsedTime; 49 | return _animate(object, self); 50 | } 51 | 52 | - (void)_appendDescription:(NSMutableString *)s debug:(BOOL)debug 53 | { 54 | [s appendFormat:@"; elapsedTime = %f; currentTime = %f;", _elapsedTime, _currentTime]; 55 | } 56 | 57 | @end 58 | 59 | /** 60 | * Note that only the animate block is copied, but not the current/elapsed times 61 | */ 62 | @implementation POPCustomAnimation (NSCopying) 63 | 64 | - (instancetype)copyWithZone:(NSZone *)zone { 65 | 66 | POPCustomAnimation *copy = [super copyWithZone:zone]; 67 | 68 | if (copy) { 69 | copy.animate = self.animate; 70 | } 71 | 72 | return copy; 73 | } 74 | 75 | @end -------------------------------------------------------------------------------- /Pods/pop/pop/POPDecayAnimation.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | /** 13 | @abstract A concrete decay animation class. 14 | @discussion Animation is achieved through gradual decay of animation value. 15 | */ 16 | @interface POPDecayAnimation : POPPropertyAnimation 17 | 18 | /** 19 | @abstract The designated initializer. 20 | @returns An instance of a decay animation. 21 | */ 22 | + (instancetype)animation; 23 | 24 | /** 25 | @abstract Convenience initializer that returns an animation with animatable property of name. 26 | @param name The name of the animatable property. 27 | @returns An instance of a decay animation configured with specified animatable property. 28 | */ 29 | + (instancetype)animationWithPropertyNamed:(NSString *)name; 30 | 31 | /** 32 | @abstract The current velocity value. 33 | @discussion Set before animation start to account for initial velocity. Expressed in change of value units per second. The only POPValueTypes supported for velocity are: kPOPValuePoint, kPOPValueInteger, kPOPValueFloat, kPOPValueRect, and kPOPValueSize. 34 | */ 35 | @property (copy, nonatomic) id velocity; 36 | 37 | /** 38 | @abstract The original velocity value. 39 | @discussion Since the velocity property is modified as the animation progresses, this property stores the original, passed in velocity to support autoreverse and repeatCount. 40 | */ 41 | @property (copy, nonatomic, readonly) id originalVelocity; 42 | 43 | /** 44 | @abstract The deceleration factor. 45 | @discussion Values specifies should be in the range [0, 1]. Lower values results in faster deceleration. Defaults to 0.998. 46 | */ 47 | @property (assign, nonatomic) CGFloat deceleration; 48 | 49 | /** 50 | @abstract The expected duration. 51 | @discussion Derived based on input velocity and deceleration values. 52 | */ 53 | @property (readonly, assign, nonatomic) CFTimeInterval duration; 54 | 55 | /** 56 | The to value is derived based on input velocity and deceleration. 57 | */ 58 | - (void)setToValue:(id)toValue NS_UNAVAILABLE; 59 | 60 | /** 61 | @abstract The reversed velocity. 62 | @discussion The reversed velocity based on the originalVelocity when the animation was set up. 63 | */ 64 | - (id)reversedVelocity; 65 | 66 | @end 67 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPDefines.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #ifndef POP_POPDefines_h 11 | #define POP_POPDefines_h 12 | 13 | #import 14 | 15 | #ifdef __cplusplus 16 | # define POP_EXTERN_C_BEGIN extern "C" { 17 | # define POP_EXTERN_C_END } 18 | #else 19 | # define POP_EXTERN_C_BEGIN 20 | # define POP_EXTERN_C_END 21 | #endif 22 | 23 | #define POP_ARRAY_COUNT(x) sizeof(x) / sizeof(x[0]) 24 | 25 | #if defined (__cplusplus) && defined (__GNUC__) 26 | # define POP_NOTHROW __attribute__ ((nothrow)) 27 | #else 28 | # define POP_NOTHROW 29 | #endif 30 | 31 | #if TARGET_OS_MAC 32 | #define SCENEKIT_SDK_AVAILABLE defined(POP_USE_SCENEKIT) 33 | #elif TARGET_OS_IPHONE 34 | #define SCENEKIT_SDK_AVAILABLE defined(POP_USE_SCENEKIT) 35 | #endif 36 | 37 | #endif 38 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPGeometry.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #if TARGET_OS_IPHONE 13 | #import 14 | #endif 15 | 16 | #if !TARGET_OS_IPHONE 17 | 18 | /** NSValue extensions to support animatable types. */ 19 | @interface NSValue (POP) 20 | 21 | /** 22 | @abstract Creates an NSValue given a CGPoint. 23 | */ 24 | + (NSValue *)valueWithCGPoint:(CGPoint)point; 25 | 26 | /** 27 | @abstract Creates an NSValue given a CGSize. 28 | */ 29 | + (NSValue *)valueWithCGSize:(CGSize)size; 30 | 31 | /** 32 | @abstract Creates an NSValue given a CGRect. 33 | */ 34 | + (NSValue *)valueWithCGRect:(CGRect)rect; 35 | 36 | /** 37 | @abstract Creates an NSValue given a CFRange. 38 | */ 39 | + (NSValue *)valueWithCFRange:(CFRange)range; 40 | 41 | /** 42 | @abstract Creates an NSValue given a CGAffineTransform. 43 | */ 44 | + (NSValue *)valueWithCGAffineTransform:(CGAffineTransform)transform; 45 | 46 | /** 47 | @abstract Returns the underlying CGPoint value. 48 | */ 49 | - (CGPoint)CGPointValue; 50 | 51 | /** 52 | @abstract Returns the underlying CGSize value. 53 | */ 54 | - (CGSize)CGSizeValue; 55 | 56 | /** 57 | @abstract Returns the underlying CGRect value. 58 | */ 59 | - (CGRect)CGRectValue; 60 | 61 | /** 62 | @abstract Returns the underlying CFRange value. 63 | */ 64 | - (CFRange)CFRangeValue; 65 | 66 | /** 67 | @abstract Returns the underlying CGAffineTransform value. 68 | */ 69 | - (CGAffineTransform)CGAffineTransformValue; 70 | 71 | @end 72 | 73 | #endif 74 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPGeometry.mm: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "POPGeometry.h" 11 | 12 | #if !TARGET_OS_IPHONE 13 | @implementation NSValue (POP) 14 | 15 | + (NSValue *)valueWithCGPoint:(CGPoint)point { 16 | return [NSValue valueWithBytes:&point objCType:@encode(CGPoint)]; 17 | } 18 | 19 | + (NSValue *)valueWithCGSize:(CGSize)size { 20 | return [NSValue valueWithBytes:&size objCType:@encode(CGSize)]; 21 | } 22 | 23 | + (NSValue *)valueWithCGRect:(CGRect)rect { 24 | return [NSValue valueWithBytes:&rect objCType:@encode(CGRect)]; 25 | } 26 | 27 | + (NSValue *)valueWithCFRange:(CFRange)range { 28 | return [NSValue valueWithBytes:&range objCType:@encode(CFRange)]; 29 | } 30 | 31 | + (NSValue *)valueWithCGAffineTransform:(CGAffineTransform)transform 32 | { 33 | return [NSValue valueWithBytes:&transform objCType:@encode(CGAffineTransform)]; 34 | } 35 | 36 | - (CGPoint)CGPointValue { 37 | CGPoint result; 38 | [self getValue:&result]; 39 | return result; 40 | } 41 | 42 | - (CGSize)CGSizeValue { 43 | CGSize result; 44 | [self getValue:&result]; 45 | return result; 46 | } 47 | 48 | - (CGRect)CGRectValue { 49 | CGRect result; 50 | [self getValue:&result]; 51 | return result; 52 | } 53 | 54 | - (CFRange)CFRangeValue { 55 | CFRange result; 56 | [self getValue:&result]; 57 | return result; 58 | } 59 | 60 | - (CGAffineTransform)CGAffineTransformValue { 61 | CGAffineTransform result; 62 | [self getValue:&result]; 63 | return result; 64 | } 65 | @end 66 | 67 | #endif 68 | 69 | #if TARGET_OS_IPHONE 70 | #import "POPDefines.h" 71 | 72 | #if SCENEKIT_SDK_AVAILABLE 73 | #import 74 | 75 | /** 76 | Dirty hacks because iOS is weird and decided to define both SCNVector3's and SCNVector4's objCType as "t". However @encode(SCNVector3) and @encode(SCNVector4) both return the proper definition ("{SCNVector3=fff}" and "{SCNVector4=ffff}" respectively) 77 | 78 | [[NSValue valueWithSCNVector3:SCNVector3Make(0.0, 0.0, 0.0)] objcType] returns "t", whereas it should return "{SCNVector3=fff}". 79 | 80 | *flips table* 81 | */ 82 | @implementation NSValue (SceneKitFixes) 83 | 84 | + (NSValue *)valueWithSCNVector3:(SCNVector3)vec3 { 85 | return [NSValue valueWithBytes:&vec3 objCType:@encode(SCNVector3)]; 86 | } 87 | 88 | + (NSValue *)valueWithSCNVector4:(SCNVector4)vec4 { 89 | return [NSValue valueWithBytes:&vec4 objCType:@encode(SCNVector4)]; 90 | } 91 | 92 | @end 93 | #endif 94 | #endif 95 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPMath.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | #import 13 | 14 | #import "POPDefines.h" 15 | #import "POPVector.h" 16 | 17 | NS_INLINE CGFloat sqrtr(CGFloat f) 18 | { 19 | #if CGFLOAT_IS_DOUBLE 20 | return sqrt(f); 21 | #else 22 | return sqrtf(f); 23 | #endif 24 | } 25 | 26 | // round to nearest sub; pass 2.0 to round to every 0.5 (eg: retina pixels) 27 | NS_INLINE CGFloat POPSubRound(CGFloat f, CGFloat sub) 28 | { 29 | return round(f * sub) / sub; 30 | } 31 | 32 | #define MIX(a, b, f) ((a) + (f) * ((b) - (a))) 33 | 34 | // the longer the duration, the higher the necessary precision 35 | #define SOLVE_EPS(dur) (1. / (1000. * (dur))) 36 | 37 | #define _EQLF_(x, y, epsilon) (fabsf ((x) - (y)) < epsilon) 38 | 39 | extern void POPInterpolateVector(NSUInteger count, CGFloat *dst, const CGFloat *from, const CGFloat *to, CGFloat f); 40 | 41 | extern double POPTimingFunctionSolve(const double vec[4], double t, double eps); 42 | 43 | // quadratic mapping of t [0, 1] to [start, end] 44 | extern double POPQuadraticOutInterpolation(double t, double start, double end); 45 | 46 | // normalize value to [0, 1] based on its range [startValue, endValue] 47 | extern double POPNormalize(double value, double startValue, double endValue); 48 | 49 | // project a normalized value [0, 1] to a given range [start, end] 50 | extern double POPProjectNormal(double n, double start, double end); 51 | 52 | // solve a quadratic equation of the form a * x^2 + b * x + c = 0 53 | extern void POPQuadraticSolve(CGFloat a, CGFloat b, CGFloat c, CGFloat &x1, CGFloat &x2); 54 | 55 | // for a given tension return the bouncy 3 friction that produces no bounce 56 | extern double POPBouncy3NoBounce(double tension); 57 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPMath.mm: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "POPMath.h" 11 | 12 | #import "POPAnimationPrivate.h" 13 | #import "UnitBezier.h" 14 | 15 | void POPInterpolateVector(NSUInteger count, CGFloat *dst, const CGFloat *from, const CGFloat *to, CGFloat f) 16 | { 17 | for (NSUInteger idx = 0; idx < count; idx++) { 18 | dst[idx] = MIX(from[idx], to[idx], f); 19 | } 20 | } 21 | 22 | double POPTimingFunctionSolve(const double vec[4], double t, double eps) 23 | { 24 | WebCore::UnitBezier bezier(vec[0], vec[1], vec[2], vec[3]); 25 | return bezier.solve(t, eps); 26 | } 27 | 28 | double POPNormalize(double value, double startValue, double endValue) 29 | { 30 | return (value - startValue) / (endValue - startValue); 31 | } 32 | 33 | double POPProjectNormal(double n, double start, double end) 34 | { 35 | return start + (n * (end - start)); 36 | } 37 | 38 | static double linear_interpolation(double t, double start, double end) 39 | { 40 | return t * end + (1.f - t) * start; 41 | } 42 | 43 | double POPQuadraticOutInterpolation(double t, double start, double end) 44 | { 45 | return linear_interpolation(2*t - t*t, start, end); 46 | } 47 | 48 | static double b3_friction1(double x) 49 | { 50 | return (0.0007 * pow(x, 3)) - (0.031 * pow(x, 2)) + 0.64 * x + 1.28; 51 | } 52 | 53 | static double b3_friction2(double x) 54 | { 55 | return (0.000044 * pow(x, 3)) - (0.006 * pow(x, 2)) + 0.36 * x + 2.; 56 | } 57 | 58 | static double b3_friction3(double x) 59 | { 60 | return (0.00000045 * pow(x, 3)) - (0.000332 * pow(x, 2)) + 0.1078 * x + 5.84; 61 | } 62 | 63 | double POPBouncy3NoBounce(double tension) 64 | { 65 | double friction = 0; 66 | if (tension <= 18.) { 67 | friction = b3_friction1(tension); 68 | } else if (tension > 18 && tension <= 44) { 69 | friction = b3_friction2(tension); 70 | } else if (tension > 44) { 71 | friction = b3_friction3(tension); 72 | } else { 73 | assert(false); 74 | } 75 | return friction; 76 | } 77 | 78 | void POPQuadraticSolve(CGFloat a, CGFloat b, CGFloat c, CGFloat &x1, CGFloat &x2) 79 | { 80 | CGFloat discriminant = sqrt(b * b - 4 * a * c); 81 | x1 = (-b + discriminant) / (2 * a); 82 | x2 = (-b - discriminant) / (2 * a); 83 | } 84 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPPropertyAnimation.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | #import 12 | 13 | /** 14 | @abstract Flags for clamping animation values. 15 | @discussion Animation values can optionally be clamped to avoid overshoot. kPOPAnimationClampStart ensures values are more than fromValue and kPOPAnimationClampEnd ensures values are less than toValue. 16 | */ 17 | typedef NS_OPTIONS(NSUInteger, POPAnimationClampFlags) 18 | { 19 | kPOPAnimationClampNone = 0, 20 | kPOPAnimationClampStart = 1UL << 0, 21 | kPOPAnimationClampEnd = 1UL << 1, 22 | kPOPAnimationClampBoth = kPOPAnimationClampStart | kPOPAnimationClampEnd, 23 | }; 24 | 25 | /** 26 | @abstract The semi-concrete property animation subclass. 27 | */ 28 | @interface POPPropertyAnimation : POPAnimation 29 | 30 | /** 31 | @abstract The property to animate. 32 | */ 33 | @property (strong, nonatomic) POPAnimatableProperty *property; 34 | 35 | /** 36 | @abstract The value to animate from. 37 | @discussion The value type should match the property. If unspecified, the value is initialized to the object's current value on animation start. 38 | */ 39 | @property (copy, nonatomic) id fromValue; 40 | 41 | /** 42 | @abstract The value to animate to. 43 | @discussion The value type should match the property. If unspecified, the value is initialized to the object's current value on animation start. 44 | */ 45 | @property (copy, nonatomic) id toValue; 46 | 47 | /** 48 | @abstract The rounding factor applied to the current animated value. 49 | @discussion Specify 1.0 to animate between integral values. Defaults to 0 meaning no rounding. 50 | */ 51 | @property (assign, nonatomic) CGFloat roundingFactor; 52 | 53 | /** 54 | @abstract The clamp mode applied to the current animated value. 55 | @discussion See {@ref POPAnimationClampFlags} for possible values. Defaults to kPOPAnimationClampNone. 56 | */ 57 | @property (assign, nonatomic) NSUInteger clampMode; 58 | 59 | /** 60 | @abstract The flag indicating whether values should be "added" each frame, rather than set. 61 | @discussion Addition may be type dependent. Defaults to NO. 62 | */ 63 | @property (assign, nonatomic, getter = isAdditive) BOOL additive; 64 | 65 | @end 66 | -------------------------------------------------------------------------------- /Pods/pop/pop/POPPropertyAnimation.mm: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import "POPPropertyAnimationInternal.h" 11 | 12 | @implementation POPPropertyAnimation 13 | 14 | #pragma mark - Lifecycle 15 | 16 | #undef __state 17 | #define __state ((POPPropertyAnimationState *)_state) 18 | 19 | - (void)_initState 20 | { 21 | _state = new POPPropertyAnimationState(self); 22 | } 23 | 24 | #pragma mark - Properties 25 | 26 | DEFINE_RW_FLAG(POPPropertyAnimationState, additive, isAdditive, setAdditive:); 27 | DEFINE_RW_PROPERTY(POPPropertyAnimationState, roundingFactor, setRoundingFactor:, CGFloat); 28 | DEFINE_RW_PROPERTY(POPPropertyAnimationState, clampMode, setClampMode:, NSUInteger); 29 | DEFINE_RW_PROPERTY_OBJ(POPPropertyAnimationState, property, setProperty:, POPAnimatableProperty*, ((POPPropertyAnimationState*)_state)->updatedDynamicsThreshold();); 30 | DEFINE_RW_PROPERTY_OBJ_COPY(POPPropertyAnimationState, progressMarkers, setProgressMarkers:, NSArray*, ((POPPropertyAnimationState*)_state)->updatedProgressMarkers();); 31 | 32 | - (id)fromValue 33 | { 34 | return POPBox(__state->fromVec, __state->valueType); 35 | } 36 | 37 | - (void)setFromValue:(id)aValue 38 | { 39 | POPPropertyAnimationState *s = __state; 40 | VectorRef vec = POPUnbox(aValue, s->valueType, s->valueCount, YES); 41 | if (!vec_equal(vec, s->fromVec)) { 42 | s->fromVec = vec; 43 | 44 | if (s->tracing) { 45 | [s->tracer updateFromValue:aValue]; 46 | } 47 | } 48 | } 49 | 50 | - (id)toValue 51 | { 52 | return POPBox(__state->toVec, __state->valueType); 53 | } 54 | 55 | - (void)setToValue:(id)aValue 56 | { 57 | POPPropertyAnimationState *s = __state; 58 | VectorRef vec = POPUnbox(aValue, s->valueType, s->valueCount, YES); 59 | 60 | if (!vec_equal(vec, s->toVec)) { 61 | s->toVec = vec; 62 | 63 | // invalidate to dependent state 64 | s->didReachToValue = false; 65 | s->distanceVec = NULL; 66 | 67 | if (s->tracing) { 68 | [s->tracer updateToValue:aValue]; 69 | } 70 | 71 | // automatically unpause active animations 72 | if (s->active && s->paused) { 73 | s->setPaused(false); 74 | } 75 | } 76 | } 77 | 78 | - (id)currentValue 79 | { 80 | return POPBox(__state->currentValue(), __state->valueType); 81 | } 82 | 83 | #pragma mark - Utility 84 | 85 | - (void)_appendDescription:(NSMutableString *)s debug:(BOOL)debug 86 | { 87 | [s appendFormat:@"; from = %@; to = %@", describe(__state->fromVec), describe(__state->toVec)]; 88 | 89 | if (_state->active) 90 | [s appendFormat:@"; currentValue = %@", describe(__state->currentValue())]; 91 | 92 | if (__state->velocityVec && 0 != __state->velocityVec->norm()) 93 | [s appendFormat:@"; velocity = %@", describe(__state->velocityVec)]; 94 | 95 | if (!self.removedOnCompletion) 96 | [s appendFormat:@"; removedOnCompletion = %@", POPStringFromBOOL(self.removedOnCompletion)]; 97 | 98 | if (__state->progressMarkers) 99 | [s appendFormat:@"; progressMarkers = [%@]", [__state->progressMarkers componentsJoinedByString:@", "]]; 100 | 101 | if (_state->active) 102 | [s appendFormat:@"; progress = %f", __state->progress]; 103 | } 104 | 105 | @end 106 | 107 | @implementation POPPropertyAnimation (NSCopying) 108 | 109 | - (instancetype)copyWithZone:(NSZone *)zone { 110 | 111 | POPPropertyAnimation *copy = [super copyWithZone:zone]; 112 | 113 | if (copy) { 114 | copy.property = [self.property copyWithZone:zone]; 115 | copy.fromValue = self.fromValue; 116 | copy.toValue = self.toValue; 117 | copy.roundingFactor = self.roundingFactor; 118 | copy.clampMode = self.clampMode; 119 | copy.additive = self.additive; 120 | } 121 | 122 | return copy; 123 | } 124 | 125 | @end -------------------------------------------------------------------------------- /Pods/pop/pop/POPSpringAnimation.h: -------------------------------------------------------------------------------- 1 | /** 2 | Copyright (c) 2014-present, Facebook, Inc. 3 | All rights reserved. 4 | 5 | This source code is licensed under the BSD-style license found in the 6 | LICENSE file in the root directory of this source tree. An additional grant 7 | of patent rights can be found in the PATENTS file in the same directory. 8 | */ 9 | 10 | #import 11 | 12 | /** 13 | @abstract A concrete spring animation class. 14 | @discussion Animation is achieved through modeling spring dynamics. 15 | */ 16 | @interface POPSpringAnimation : POPPropertyAnimation 17 | 18 | /** 19 | @abstract The designated initializer. 20 | @returns An instance of a spring animation. 21 | */ 22 | + (instancetype)animation; 23 | 24 | /** 25 | @abstract Convenience initializer that returns an animation with animatable property of name. 26 | @param name The name of the animatable property. 27 | @returns An instance of a spring animation configured with specified animatable property. 28 | */ 29 | + (instancetype)animationWithPropertyNamed:(NSString *)name; 30 | 31 | /** 32 | @abstract The current velocity value. 33 | @discussion Set before animation start to account for initial velocity. Expressed in change of value units per second. 34 | */ 35 | @property (copy, nonatomic) id velocity; 36 | 37 | /** 38 | @abstract The effective bounciness. 39 | @discussion Use in conjunction with 'springSpeed' to change animation effect. Values are converted into corresponding dynamics constants. Higher values increase spring movement range resulting in more oscillations and springiness. Defined as a value in the range [0, 20]. Defaults to 4. 40 | */ 41 | @property (assign, nonatomic) CGFloat springBounciness; 42 | 43 | /** 44 | @abstract The effective speed. 45 | @discussion Use in conjunction with 'springBounciness' to change animation effect. Values are converted into corresponding dynamics constants. Higher values increase the dampening power of the spring resulting in a faster initial velocity and more rapid bounce slowdown. Defined as a value in the range [0, 20]. Defaults to 12. 46 | */ 47 | @property (assign, nonatomic) CGFloat springSpeed; 48 | 49 | /** 50 | @abstract The tension used in the dynamics simulation. 51 | @discussion Can be used over bounciness and speed for finer grain tweaking of animation effect. 52 | */ 53 | @property (assign, nonatomic) CGFloat dynamicsTension; 54 | 55 | /** 56 | @abstract The friction used in the dynamics simulation. 57 | @discussion Can be used over bounciness and speed for finer grain tweaking of animation effect. 58 | */ 59 | @property (assign, nonatomic) CGFloat dynamicsFriction; 60 | 61 | /** 62 | @abstract The mass used in the dynamics simulation. 63 | @discussion Can be used over bounciness and speed for finer grain tweaking of animation effect. 64 | */ 65 | @property (assign, nonatomic) CGFloat dynamicsMass; 66 | 67 | @end 68 | -------------------------------------------------------------------------------- /Pods/pop/pop/WebCore/FloatConversion.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2007 Apple Inc. All rights reserved. 3 | * 4 | * Redistribution and use in source and binary forms, with or without 5 | * modification, are permitted provided that the following conditions 6 | * are met: 7 | * 8 | * 1. Redistributions of source code must retain the above copyright 9 | * notice, this list of conditions and the following disclaimer. 10 | * 2. Redistributions in binary form must reproduce the above copyright 11 | * notice, this list of conditions and the following disclaimer in the 12 | * documentation and/or other materials provided with the distribution. 13 | * 3. Neither the name of Apple Computer, Inc. ("Apple") nor the names of 14 | * its contributors may be used to endorse or promote products derived 15 | * from this software without specific prior written permission. 16 | * 17 | * THIS SOFTWARE IS PROVIDED BY APPLE AND ITS CONTRIBUTORS "AS IS" AND ANY 18 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 19 | * WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 20 | * DISCLAIMED. IN NO EVENT SHALL APPLE OR ITS CONTRIBUTORS BE LIABLE FOR ANY 21 | * DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 22 | * (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 23 | * LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND 24 | * ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 25 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF 26 | * THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 27 | */ 28 | 29 | #ifndef FloatConversion_h 30 | #define FloatConversion_h 31 | 32 | #include 33 | 34 | namespace WebCore { 35 | 36 | template 37 | float narrowPrecisionToFloat(T); 38 | 39 | template<> 40 | inline float narrowPrecisionToFloat(double number) 41 | { 42 | return static_cast(number); 43 | } 44 | 45 | template 46 | CGFloat narrowPrecisionToCGFloat(T); 47 | 48 | template<> 49 | inline CGFloat narrowPrecisionToCGFloat(double number) 50 | { 51 | return static_cast(number); 52 | } 53 | 54 | } // namespace WebCore 55 | 56 | #endif // FloatConversion_h 57 | -------------------------------------------------------------------------------- /Pods/pop/pop/WebCore/UnitBezier.h: -------------------------------------------------------------------------------- 1 | /* 2 | * Copyright (C) 2008 Apple Inc. All Rights Reserved. 3 | * 4 | * Redistribution and use in source and binary forms, with or without 5 | * modification, are permitted provided that the following conditions 6 | * are met: 7 | * 1. Redistributions of source code must retain the above copyright 8 | * notice, this list of conditions and the following disclaimer. 9 | * 2. Redistributions in binary form must reproduce the above copyright 10 | * notice, this list of conditions and the following disclaimer in the 11 | * documentation and/or other materials provided with the distribution. 12 | * 13 | * THIS SOFTWARE IS PROVIDED BY APPLE INC. ``AS IS'' AND ANY 14 | * EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE 15 | * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR 16 | * PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL APPLE INC. OR 17 | * CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, 18 | * EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, 19 | * PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR 20 | * PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY 21 | * OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 22 | * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE 23 | * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 24 | */ 25 | 26 | #ifndef UnitBezier_h 27 | #define UnitBezier_h 28 | 29 | #include 30 | 31 | namespace WebCore { 32 | 33 | struct UnitBezier { 34 | UnitBezier(double p1x, double p1y, double p2x, double p2y) 35 | { 36 | // Calculate the polynomial coefficients, implicit first and last control points are (0,0) and (1,1). 37 | cx = 3.0 * p1x; 38 | bx = 3.0 * (p2x - p1x) - cx; 39 | ax = 1.0 - cx -bx; 40 | 41 | cy = 3.0 * p1y; 42 | by = 3.0 * (p2y - p1y) - cy; 43 | ay = 1.0 - cy - by; 44 | } 45 | 46 | double sampleCurveX(double t) 47 | { 48 | // `ax t^3 + bx t^2 + cx t' expanded using Horner's rule. 49 | return ((ax * t + bx) * t + cx) * t; 50 | } 51 | 52 | double sampleCurveY(double t) 53 | { 54 | return ((ay * t + by) * t + cy) * t; 55 | } 56 | 57 | double sampleCurveDerivativeX(double t) 58 | { 59 | return (3.0 * ax * t + 2.0 * bx) * t + cx; 60 | } 61 | 62 | // Given an x value, find a parametric value it came from. 63 | double solveCurveX(double x, double epsilon) 64 | { 65 | double t0; 66 | double t1; 67 | double t2; 68 | double x2; 69 | double d2; 70 | int i; 71 | 72 | // First try a few iterations of Newton's method -- normally very fast. 73 | for (t2 = x, i = 0; i < 8; i++) { 74 | x2 = sampleCurveX(t2) - x; 75 | if (fabs (x2) < epsilon) 76 | return t2; 77 | d2 = sampleCurveDerivativeX(t2); 78 | if (fabs(d2) < 1e-6) 79 | break; 80 | t2 = t2 - x2 / d2; 81 | } 82 | 83 | // Fall back to the bisection method for reliability. 84 | t0 = 0.0; 85 | t1 = 1.0; 86 | t2 = x; 87 | 88 | if (t2 < t0) 89 | return t0; 90 | if (t2 > t1) 91 | return t1; 92 | 93 | while (t0 < t1) { 94 | x2 = sampleCurveX(t2); 95 | if (fabs(x2 - x) < epsilon) 96 | return t2; 97 | if (x > x2) 98 | t0 = t2; 99 | else 100 | t1 = t2; 101 | t2 = (t1 - t0) * .5 + t0; 102 | } 103 | 104 | // Failure. 105 | return t2; 106 | } 107 | 108 | double solve(double x, double epsilon) 109 | { 110 | return sampleCurveY(solveCurveX(x, epsilon)); 111 | } 112 | 113 | private: 114 | double ax; 115 | double bx; 116 | double cx; 117 | 118 | double ay; 119 | double by; 120 | double cy; 121 | }; 122 | } 123 | #endif 124 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # LearnCube-iOS 2 | An animation practise demo,See it on [Dribbble](https://dribbble.com/shots/2124167-LearnCube-Code?list=users&offset=0) 3 | 4 | ##Asset I used... 5 | 6 | I used [Swifticons](http://swifticons.com) in main UI for its subtle color and shape. 7 | 8 | I also used [BigMug](https://dribbble.com/shots/1634821-440-Free-Icons)'s icon in tab bar,the designer is [Catalin Fertu](https://dribbble.com/catalinfertu) 9 | 10 | ##Why I Do This? 11 | 12 | As a motion designer,I begin to learn some code. 13 | 14 | When I saw the Lush App,I'm very interesting in its tabbar's design.The Square moved in tab bar and changed color,I like the wonderful effect!That's why I make this demo. 15 | 16 | In this demo,I try to use CABasicAnimation/POP Animation/Animatewithduration to make effect better. 17 | 18 | ##Final Effect 19 | 20 | ![xcode](https://github.com/MartinRGB/LearnCube-iOS/blob/master/Demo.gif?raw=true) 21 | 22 | _This is the effect in Xcode_ 23 | 24 | Sorry for my poor code skill.I'm keep learning,welcome for suggest. 25 | 26 | 27 | P.S Special Thanks to AlienJunX,he is always supporting me. 28 | -------------------------------------------------------------------------------- /Tabbar.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Tabbar.xcodeproj/project.xcworkspace/xcuserdata/MartinRGB.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar.xcodeproj/project.xcworkspace/xcuserdata/MartinRGB.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /Tabbar.xcodeproj/project.xcworkspace/xcuserdata/a1.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar.xcodeproj/project.xcworkspace/xcuserdata/a1.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /Tabbar.xcodeproj/xcuserdata/MartinRGB.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /Tabbar.xcodeproj/xcuserdata/MartinRGB.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Tabbar.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | 63FD26071B32CE4500975CB0 16 | 17 | primary 18 | 19 | 20 | 63FD26231B32CE4500975CB0 21 | 22 | primary 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /Tabbar.xcodeproj/xcuserdata/a1.xcuserdatad/xcschemes/xcschememanagement.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | SchemeUserState 6 | 7 | Tabbar.xcscheme 8 | 9 | orderHint 10 | 0 11 | 12 | 13 | SuppressBuildableAutocreation 14 | 15 | 63FD26071B32CE4500975CB0 16 | 17 | primary 18 | 19 | 20 | 63FD26231B32CE4500975CB0 21 | 22 | primary 23 | 24 | 25 | 26 | 27 | 28 | -------------------------------------------------------------------------------- /Tabbar.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 9 | 10 | 11 | -------------------------------------------------------------------------------- /Tabbar.xcworkspace/xcshareddata/Tabbar.xccheckout: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | IDESourceControlProjectFavoriteDictionaryKey 6 | 7 | IDESourceControlProjectIdentifier 8 | EF749A1E-E8A8-493B-8CB6-472535F6DC4D 9 | IDESourceControlProjectName 10 | Tabbar 11 | IDESourceControlProjectOriginsDictionary 12 | 13 | 2AAF1AF8346F2A5FBCB8FD89B4DD4A2B8DD14750 14 | https://github.com/MartinRGB/LearnCube-iOS.git 15 | 16 | IDESourceControlProjectPath 17 | Tabbar.xcworkspace 18 | IDESourceControlProjectRelativeInstallPathDictionary 19 | 20 | 2AAF1AF8346F2A5FBCB8FD89B4DD4A2B8DD14750 21 | .. 22 | 23 | IDESourceControlProjectURL 24 | https://github.com/MartinRGB/LearnCube-iOS.git 25 | IDESourceControlProjectVersion 26 | 111 27 | IDESourceControlProjectWCCIdentifier 28 | 2AAF1AF8346F2A5FBCB8FD89B4DD4A2B8DD14750 29 | IDESourceControlProjectWCConfigurations 30 | 31 | 32 | IDESourceControlRepositoryExtensionIdentifierKey 33 | public.vcs.git 34 | IDESourceControlWCCIdentifierKey 35 | 2AAF1AF8346F2A5FBCB8FD89B4DD4A2B8DD14750 36 | IDESourceControlWCCName 37 | LearnCube-iOS 38 | 39 | 40 | 41 | 42 | -------------------------------------------------------------------------------- /Tabbar.xcworkspace/xcuserdata/MartinRGB.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar.xcworkspace/xcuserdata/MartinRGB.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /Tabbar.xcworkspace/xcuserdata/a1.xcuserdatad/UserInterfaceState.xcuserstate: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar.xcworkspace/xcuserdata/a1.xcuserdatad/UserInterfaceState.xcuserstate -------------------------------------------------------------------------------- /Tabbar.xcworkspace/xcuserdata/a1.xcuserdatad/xcdebugger/Breakpoints_v2.xcbkptlist: -------------------------------------------------------------------------------- 1 | 2 | 5 | 6 | -------------------------------------------------------------------------------- /Tabbar/AppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // AppDelegate.h 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. 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 | -------------------------------------------------------------------------------- /Tabbar/Base.lproj/LaunchScreen.xib: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 20 | 26 | 27 | 28 | 29 | 30 | 31 | 32 | 33 | 34 | 35 | 36 | 37 | 38 | 39 | 40 | 41 | -------------------------------------------------------------------------------- /Tabbar/FifthViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // FifthViewController.h 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FifthViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /Tabbar/FirstViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // FirstViewController.h 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FirstViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /Tabbar/FourthViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // FourthViewController.h 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface FourthViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "size" : "29x29", 5 | "idiom" : "iphone", 6 | "filename" : "Icon-29@2x.png", 7 | "scale" : "2x" 8 | }, 9 | { 10 | "size" : "29x29", 11 | "idiom" : "iphone", 12 | "filename" : "Icon-29@3x.png", 13 | "scale" : "3x" 14 | }, 15 | { 16 | "size" : "40x40", 17 | "idiom" : "iphone", 18 | "filename" : "Icon-40@2x.png", 19 | "scale" : "2x" 20 | }, 21 | { 22 | "size" : "40x40", 23 | "idiom" : "iphone", 24 | "filename" : "Icon-40@3x.png", 25 | "scale" : "3x" 26 | }, 27 | { 28 | "size" : "60x60", 29 | "idiom" : "iphone", 30 | "filename" : "Icon-60@2x.png", 31 | "scale" : "2x" 32 | }, 33 | { 34 | "size" : "60x60", 35 | "idiom" : "iphone", 36 | "filename" : "Icon-60@3x.png", 37 | "scale" : "3x" 38 | }, 39 | { 40 | "idiom" : "ipad", 41 | "size" : "29x29", 42 | "scale" : "1x" 43 | }, 44 | { 45 | "idiom" : "ipad", 46 | "size" : "29x29", 47 | "scale" : "2x" 48 | }, 49 | { 50 | "idiom" : "ipad", 51 | "size" : "40x40", 52 | "scale" : "1x" 53 | }, 54 | { 55 | "idiom" : "ipad", 56 | "size" : "40x40", 57 | "scale" : "2x" 58 | }, 59 | { 60 | "idiom" : "ipad", 61 | "size" : "76x76", 62 | "scale" : "1x" 63 | }, 64 | { 65 | "idiom" : "ipad", 66 | "size" : "76x76", 67 | "scale" : "2x" 68 | } 69 | ], 70 | "info" : { 71 | "version" : 1, 72 | "author" : "xcode" 73 | } 74 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/AppIcon.appiconset/Icon-29@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/AppIcon.appiconset/Icon-29@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/AppIcon.appiconset/Icon-29@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/AppIcon.appiconset/Icon-29@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/AppIcon.appiconset/Icon-40@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/AppIcon.appiconset/Icon-40@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/AppIcon.appiconset/Icon-40@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/AppIcon.appiconset/Icon-40@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/AppIcon.appiconset/Icon-60@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/AppIcon.appiconset/Icon-60@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/AppIcon.appiconset/Icon-60@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/BG1.imageset/BG1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/BG1.imageset/BG1.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/BG1.imageset/BG1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/BG1.imageset/BG1@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/BG1.imageset/BG1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/BG1.imageset/BG1@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/BG1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "BG1.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "BG1@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "BG1@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C1.imageset/C1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C1.imageset/C1.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C1.imageset/C1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C1.imageset/C1@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C1.imageset/C1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C1.imageset/C1@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "C1.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "C1@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "C1@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C2.imageset/C2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C2.imageset/C2.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C2.imageset/C2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C2.imageset/C2@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C2.imageset/C2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C2.imageset/C2@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "C2.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "C2@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "C2@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C3.imageset/C3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C3.imageset/C3.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C3.imageset/C3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C3.imageset/C3@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C3.imageset/C3@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C3.imageset/C3@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C3.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "C3.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "C3@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "C3@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C4.imageset/C4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C4.imageset/C4.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C4.imageset/C4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C4.imageset/C4@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C4.imageset/C4@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C4.imageset/C4@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C4.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "C4.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "C4@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "C4@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C5.imageset/C5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C5.imageset/C5.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C5.imageset/C5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C5.imageset/C5@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C5.imageset/C5@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/C5.imageset/C5@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/C5.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "C5.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "C5@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "C5@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/NavDownloads.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "NavDownloads.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "NavDownloads@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "NavDownloads@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/NavDownloads.imageset/NavDownloads.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/NavDownloads.imageset/NavDownloads.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/NavDownloads.imageset/NavDownloads@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/NavDownloads.imageset/NavDownloads@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 1/NavDownloads.imageset/NavDownloads@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 1/NavDownloads.imageset/NavDownloads@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/BG2.imageset/BG2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/BG2.imageset/BG2.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/BG2.imageset/BG2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/BG2.imageset/BG2@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/BG2.imageset/BG2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/BG2.imageset/BG2@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/BG2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "BG2.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "BG2@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "BG2@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/Card 1.imageset/Card 1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/Card 1.imageset/Card 1.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/Card 1.imageset/Card 1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/Card 1.imageset/Card 1@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/Card 1.imageset/Card 1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/Card 1.imageset/Card 1@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/Card 1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Card 1.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Card 1@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Card 1@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/Card 2.imageset/Card 2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/Card 2.imageset/Card 2.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/Card 2.imageset/Card 2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/Card 2.imageset/Card 2@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/Card 2.imageset/Card 2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/Card 2.imageset/Card 2@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/Card 2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Card 2.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Card 2@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Card 2@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/NavStar.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "NavStar.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "NavStar@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "NavStar@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/NavStar.imageset/NavStar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/NavStar.imageset/NavStar.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/NavStar.imageset/NavStar@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/NavStar.imageset/NavStar@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 2/NavStar.imageset/NavStar@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 2/NavStar.imageset/NavStar@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/BG3.imageset/BG3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/BG3.imageset/BG3.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/BG3.imageset/BG3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/BG3.imageset/BG3@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/BG3.imageset/BG3@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/BG3.imageset/BG3@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/BG3.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "BG3.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "BG3@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "BG3@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "I1.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "I1@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "I1@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I1.imageset/I1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I1.imageset/I1.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I1.imageset/I1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I1.imageset/I1@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I1.imageset/I1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I1.imageset/I1@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "I2.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "I2@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "I2@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I2.imageset/I2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I2.imageset/I2.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I2.imageset/I2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I2.imageset/I2@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I2.imageset/I2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I2.imageset/I2@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I3.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "I3.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "I3@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "I3@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I3.imageset/I3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I3.imageset/I3.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I3.imageset/I3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I3.imageset/I3@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I3.imageset/I3@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I3.imageset/I3@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I4.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "I4.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "I4@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "I4@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I4.imageset/I4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I4.imageset/I4.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I4.imageset/I4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I4.imageset/I4@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I4.imageset/I4@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I4.imageset/I4@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I5.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "I5.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "I5@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "I5@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I5.imageset/I5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I5.imageset/I5.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I5.imageset/I5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I5.imageset/I5@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I5.imageset/I5@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I5.imageset/I5@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I6.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "I6.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "I6@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "I6@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I6.imageset/I6.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I6.imageset/I6.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I6.imageset/I6@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I6.imageset/I6@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/I6.imageset/I6@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/I6.imageset/I6@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Line.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Line.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Line@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Line@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Line.imageset/Line.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Line.imageset/Line.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Line.imageset/Line@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Line.imageset/Line@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Line.imageset/Line@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Line.imageset/Line@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/NavStore.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "NavStore.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "NavStore@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "NavStore@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/NavStore.imageset/NavStore.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/NavStore.imageset/NavStore.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/NavStore.imageset/NavStore@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/NavStore.imageset/NavStore@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/NavStore.imageset/NavStore@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/NavStore.imageset/NavStore@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/P3Text.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "P3Text.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "P3Text@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "P3Text@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/P3Text.imageset/P3Text.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/P3Text.imageset/P3Text.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/P3Text.imageset/P3Text@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/P3Text.imageset/P3Text@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/P3Text.imageset/P3Text@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/P3Text.imageset/P3Text@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/3D.imageset/3D.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/3D.imageset/3D.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/3D.imageset/3D@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/3D.imageset/3D@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/3D.imageset/3D@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/3D.imageset/3D@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/3D.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "3D.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "3D@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "3D@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Analyzeloop.imageset/Analyzeloop.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Analyzeloop.imageset/Analyzeloop.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Analyzeloop.imageset/Analyzeloop@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Analyzeloop.imageset/Analyzeloop@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Analyzeloop.imageset/Analyzeloop@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Analyzeloop.imageset/Analyzeloop@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Analyzeloop.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Analyzeloop.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Analyzeloop@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Analyzeloop@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Bandage.imageset/Bandage.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Bandage.imageset/Bandage.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Bandage.imageset/Bandage@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Bandage.imageset/Bandage@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Bandage.imageset/Bandage@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Bandage.imageset/Bandage@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Bandage.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Bandage.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Bandage@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Bandage@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Bill.imageset/Bill.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Bill.imageset/Bill.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Bill.imageset/Bill@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Bill.imageset/Bill@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Bill.imageset/Bill@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Bill.imageset/Bill@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Bill.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Bill.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Bill@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Bill@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Blitzcam.imageset/Blitzcam.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Blitzcam.imageset/Blitzcam.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Blitzcam.imageset/Blitzcam@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Blitzcam.imageset/Blitzcam@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Blitzcam.imageset/Blitzcam@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Blitzcam.imageset/Blitzcam@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Blitzcam.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Blitzcam.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Blitzcam@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Blitzcam@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Browsercode.imageset/Browsercode.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Browsercode.imageset/Browsercode.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Browsercode.imageset/Browsercode@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Browsercode.imageset/Browsercode@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Browsercode.imageset/Browsercode@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Browsercode.imageset/Browsercode@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Browsercode.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Browsercode.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Browsercode@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Browsercode@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Browserscript.imageset/Browserscript.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Browserscript.imageset/Browserscript.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Browserscript.imageset/Browserscript@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Browserscript.imageset/Browserscript@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Browserscript.imageset/Browserscript@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Browserscript.imageset/Browserscript@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Browserscript.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Browserscript.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Browserscript@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Browserscript@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Calculator.imageset/Calculator.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Calculator.imageset/Calculator.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Calculator.imageset/Calculator@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Calculator.imageset/Calculator@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Calculator.imageset/Calculator@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Calculator.imageset/Calculator@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Calculator.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Calculator.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Calculator@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Calculator@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Chart.imageset/Chart.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Chart.imageset/Chart.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Chart.imageset/Chart@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Chart.imageset/Chart@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Chart.imageset/Chart@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Chart.imageset/Chart@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Chart.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Chart.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Chart@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Chart@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/DJ.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "DJ.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "DJ@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "DJ@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/DJ.imageset/DJ.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/DJ.imageset/DJ.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/DJ.imageset/DJ@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/DJ.imageset/DJ@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/DJ.imageset/DJ@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/DJ.imageset/DJ@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Drums.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Drums.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Drums@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Drums@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Drums.imageset/Drums.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Drums.imageset/Drums.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Drums.imageset/Drums@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Drums.imageset/Drums@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Drums.imageset/Drums@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Drums.imageset/Drums@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Financestat.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Financestat.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Financestat@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Financestat@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Financestat.imageset/Financestat.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Financestat.imageset/Financestat.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Financestat.imageset/Financestat@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Financestat.imageset/Financestat@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Financestat.imageset/Financestat@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Financestat.imageset/Financestat@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Jesus.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Jesus.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Jesus@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Jesus@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Jesus.imageset/Jesus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Jesus.imageset/Jesus.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Jesus.imageset/Jesus@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Jesus.imageset/Jesus@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Jesus.imageset/Jesus@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Jesus.imageset/Jesus@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Moviecam.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Moviecam.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Moviecam@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Moviecam@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Moviecam.imageset/Moviecam.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Moviecam.imageset/Moviecam.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Moviecam.imageset/Moviecam@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Moviecam.imageset/Moviecam@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Moviecam.imageset/Moviecam@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Moviecam.imageset/Moviecam@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Negativephoto.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Negativephoto.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Negativephoto@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Negativephoto@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Negativephoto.imageset/Negativephoto.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Negativephoto.imageset/Negativephoto.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Negativephoto.imageset/Negativephoto@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Negativephoto.imageset/Negativephoto@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Negativephoto.imageset/Negativephoto@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Negativephoto.imageset/Negativephoto@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Oval.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Oval.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Oval@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Oval@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Oval.imageset/Oval.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Oval.imageset/Oval.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Oval.imageset/Oval@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Oval.imageset/Oval@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Oval.imageset/Oval@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Oval.imageset/Oval@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/PCboard.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "PCboard.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "PCboard@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "PCboard@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/PCboard.imageset/PCboard.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/PCboard.imageset/PCboard.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/PCboard.imageset/PCboard@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/PCboard.imageset/PCboard@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/PCboard.imageset/PCboard@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/PCboard.imageset/PCboard@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Spaceship.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Spaceship.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Spaceship@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Spaceship@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Spaceship.imageset/Spaceship.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Spaceship.imageset/Spaceship.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Spaceship.imageset/Spaceship@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Spaceship.imageset/Spaceship@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Spaceship.imageset/Spaceship@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Spaceship.imageset/Spaceship@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Tie.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Tie.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Tie@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Tie@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Tie.imageset/Tie.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Tie.imageset/Tie.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Tie.imageset/Tie@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Tie.imageset/Tie@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 3/Top/Tie.imageset/Tie@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 3/Top/Tie.imageset/Tie@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/BG4.imageset/BG4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/BG4.imageset/BG4.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/BG4.imageset/BG4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/BG4.imageset/BG4@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/BG4.imageset/BG4@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/BG4.imageset/BG4@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/BG4.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "BG4.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "BG4@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "BG4@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/NavStatus.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "NavStatus.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "NavStatus@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "NavStatus@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/NavStatus.imageset/NavStatus.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/NavStatus.imageset/NavStatus.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/NavStatus.imageset/NavStatus@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/NavStatus.imageset/NavStatus@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/NavStatus.imageset/NavStatus@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/NavStatus.imageset/NavStatus@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/SCard 1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "SCard 1.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "SCard 1@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "SCard 1@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/SCard 1.imageset/SCard 1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/SCard 1.imageset/SCard 1.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/SCard 1.imageset/SCard 1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/SCard 1.imageset/SCard 1@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/SCard 1.imageset/SCard 1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/SCard 1.imageset/SCard 1@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/SCard2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "SCard2.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "SCard2@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "SCard2@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/SCard2.imageset/SCard2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/SCard2.imageset/SCard2.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/SCard2.imageset/SCard2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/SCard2.imageset/SCard2@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/SCard2.imageset/SCard2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/SCard2.imageset/SCard2@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "t1.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "t1@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "t1@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t1.imageset/t1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t1.imageset/t1.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t1.imageset/t1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t1.imageset/t1@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t1.imageset/t1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t1.imageset/t1@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "t2.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "t2@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "t2@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t2.imageset/t2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t2.imageset/t2.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t2.imageset/t2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t2.imageset/t2@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t2.imageset/t2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t2.imageset/t2@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t3.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "t3.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "t3@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "t3@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t3.imageset/t3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t3.imageset/t3.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t3.imageset/t3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t3.imageset/t3@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 4/t3.imageset/t3@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 4/t3.imageset/t3@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/Avatar.imageset/Avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/Avatar.imageset/Avatar.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/Avatar.imageset/Avatar@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/Avatar.imageset/Avatar@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/Avatar.imageset/Avatar@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/Avatar.imageset/Avatar@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/Avatar.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "Avatar.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "Avatar@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "Avatar@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/BG5.imageset/BG5.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/BG5.imageset/BG5.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/BG5.imageset/BG5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/BG5.imageset/BG5@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/BG5.imageset/BG5@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/BG5.imageset/BG5@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/BG5.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "BG5.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "BG5@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "BG5@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/MartinRGB.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "MartinRGB.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "MartinRGB@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "MartinRGB@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/MartinRGB.imageset/MartinRGB.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/MartinRGB.imageset/MartinRGB.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/MartinRGB.imageset/MartinRGB@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/MartinRGB.imageset/MartinRGB@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/MartinRGB.imageset/MartinRGB@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/MartinRGB.imageset/MartinRGB@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/MartinRGB2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "MartinRGB2.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "MartinRGB2@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "MartinRGB2@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/MartinRGB2.imageset/MartinRGB2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/MartinRGB2.imageset/MartinRGB2.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/MartinRGB2.imageset/MartinRGB2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/MartinRGB2.imageset/MartinRGB2@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/MartinRGB2.imageset/MartinRGB2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/MartinRGB2.imageset/MartinRGB2@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/NavSetting.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "NavSetting.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "NavSetting@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "NavSetting@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/NavSetting.imageset/NavSetting.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/NavSetting.imageset/NavSetting.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/NavSetting.imageset/NavSetting@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/NavSetting.imageset/NavSetting@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/NavSetting.imageset/NavSetting@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/NavSetting.imageset/NavSetting@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S1.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "S1.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "S1@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "S1@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S1.imageset/S1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S1.imageset/S1.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S1.imageset/S1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S1.imageset/S1@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S1.imageset/S1@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S1.imageset/S1@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S2.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "S2.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "S2@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "S2@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S2.imageset/S2.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S2.imageset/S2.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S2.imageset/S2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S2.imageset/S2@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S2.imageset/S2@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S2.imageset/S2@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S3.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "S3.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "S3@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "S3@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S3.imageset/S3.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S3.imageset/S3.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S3.imageset/S3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S3.imageset/S3@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S3.imageset/S3@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S3.imageset/S3@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S4.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "S4.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "S4@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "S4@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S4.imageset/S4.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S4.imageset/S4.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S4.imageset/S4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S4.imageset/S4@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/Page 5/S4.imageset/S4@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/Page 5/S4.imageset/S4@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/TabBG.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "TabBG.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "TabBG@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "TabBG@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/TabBG.imageset/TabBG.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/TabBG.imageset/TabBG.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/TabBG.imageset/TabBG@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/TabBG.imageset/TabBG@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/TabBG.imageset/TabBG@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/TabBG.imageset/TabBG@3x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/whitespace.imageset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "universal", 5 | "scale" : "1x", 6 | "filename" : "whitespace.png" 7 | }, 8 | { 9 | "idiom" : "universal", 10 | "scale" : "2x", 11 | "filename" : "whitespace@2x.png" 12 | }, 13 | { 14 | "idiom" : "universal", 15 | "scale" : "3x", 16 | "filename" : "whitespace@3x.png" 17 | } 18 | ], 19 | "info" : { 20 | "version" : 1, 21 | "author" : "xcode" 22 | } 23 | } -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/whitespace.imageset/whitespace.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/whitespace.imageset/whitespace.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/whitespace.imageset/whitespace@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/whitespace.imageset/whitespace@2x.png -------------------------------------------------------------------------------- /Tabbar/Images.xcassets/whitespace.imageset/whitespace@3x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MartinRGB/LearnCube-iOS/1e2deddeda8d237a3786ae93739614820ae6db80/Tabbar/Images.xcassets/whitespace.imageset/whitespace@3x.png -------------------------------------------------------------------------------- /Tabbar/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | Martin.MoDesignStudio.$(PRODUCT_NAME:rfc1034identifier) 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundleName 14 | LearnCube 15 | CFBundlePackageType 16 | APPL 17 | CFBundleShortVersionString 18 | 1.0 19 | CFBundleSignature 20 | ???? 21 | CFBundleVersion 22 | 1 23 | LSRequiresIPhoneOS 24 | 25 | UILaunchStoryboardName 26 | LaunchScreen 27 | UIMainStoryboardFile 28 | Main 29 | UIRequiredDeviceCapabilities 30 | 31 | armv7 32 | 33 | UIStatusBarHidden 34 | 35 | UIStatusBarTintParameters 36 | 37 | UINavigationBar 38 | 39 | Style 40 | UIBarStyleDefault 41 | Translucent 42 | 43 | 44 | 45 | UISupportedInterfaceOrientations 46 | 47 | UIInterfaceOrientationPortrait 48 | UIInterfaceOrientationLandscapeLeft 49 | UIInterfaceOrientationLandscapeRight 50 | 51 | UISupportedInterfaceOrientations~ipad 52 | 53 | UIInterfaceOrientationPortrait 54 | UIInterfaceOrientationPortraitUpsideDown 55 | UIInterfaceOrientationLandscapeLeft 56 | UIInterfaceOrientationLandscapeRight 57 | 58 | UIViewControllerBasedStatusBarAppearance 59 | 60 | 61 | 62 | -------------------------------------------------------------------------------- /Tabbar/SecondViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // SecondViewController.h 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface SecondViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /Tabbar/SecondViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // SecondViewController.m 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. All rights reserved. 7 | // 8 | 9 | #import "SecondViewController.h" 10 | #import 11 | 12 | @interface SecondViewController () 13 | @property (weak, nonatomic) IBOutlet UITabBarItem *tabstar; 14 | @property (strong, nonatomic) IBOutlet UIImageView *card1; 15 | @property (strong, nonatomic) IBOutlet UIImageView *card2; 16 | 17 | @end 18 | 19 | @implementation SecondViewController 20 | 21 | - (void)viewDidLoad { 22 | [super viewDidLoad]; 23 | // Do any additional setup after loading the view, typically from a nib. 24 | 25 | 26 | } 27 | 28 | - (void)didReceiveMemoryWarning { 29 | [super didReceiveMemoryWarning]; 30 | // Dispose of any resources that can be recreated. 31 | } 32 | 33 | - (void)viewWillAppear:(BOOL)animated { 34 | 35 | //init 36 | _card1.alpha = 0; 37 | _card2.alpha = 0; 38 | 39 | //card animation 40 | CGPoint card1c=_card1.center; 41 | _card1.center=card1c; 42 | POPSpringAnimation * C1Y = [POPSpringAnimation animationWithPropertyNamed:kPOPLayerPositionY]; 43 | C1Y.beginTime = CACurrentMediaTime() + 0.2; 44 | C1Y.toValue = @(card1c. y-= 200); 45 | C1Y.springBounciness = 4; 46 | C1Y.springSpeed = 8; 47 | [_card1 pop_addAnimation:C1Y forKey:@"Card1Y"]; 48 | 49 | CGPoint card2c=_card2.center; 50 | _card2.center=card2c; 51 | POPSpringAnimation * C2Y = [POPSpringAnimation animationWithPropertyNamed:kPOPLayerPositionY]; 52 | C2Y.beginTime = CACurrentMediaTime() + 0.3; 53 | C2Y.toValue = @(card2c. y-= 200); 54 | C2Y.springBounciness = 4; 55 | C2Y.springSpeed = 8; 56 | [_card2 pop_addAnimation:C2Y forKey:@"Card2Y"]; 57 | 58 | POPBasicAnimation *C1A = [POPBasicAnimation animation]; 59 | C1A.property = [POPAnimatableProperty propertyWithName:kPOPViewAlpha]; 60 | C1A.beginTime = CACurrentMediaTime() + 0.2; 61 | C1A.fromValue= @(0); 62 | C1A.toValue= @(1); 63 | [_card1 pop_addAnimation:C1A forKey:@"C1A"]; 64 | 65 | POPBasicAnimation *C2A = [POPBasicAnimation animation]; 66 | C2A.property = [POPAnimatableProperty propertyWithName:kPOPViewAlpha]; 67 | C2A.beginTime = CACurrentMediaTime() + 0.3; 68 | C2A.fromValue= @(0); 69 | C2A.toValue= @(1); 70 | [_card2 pop_addAnimation:C2A forKey:@"C2A"]; 71 | 72 | 73 | } 74 | @end 75 | -------------------------------------------------------------------------------- /Tabbar/TabBarViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // TabBarViewController.h 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/19. 6 | // Copyright (c) 2015年 1. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface TabBarViewController : UITabBarController 12 | 13 | 14 | @end 15 | -------------------------------------------------------------------------------- /Tabbar/ThirdViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // ThirdViewController.h 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface ThirdViewController : UIViewController 12 | 13 | 14 | @end 15 | 16 | -------------------------------------------------------------------------------- /Tabbar/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // Tabbar 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. 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 | -------------------------------------------------------------------------------- /TabbarTests/Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | $(EXECUTABLE_NAME) 9 | CFBundleIdentifier 10 | Martin.MoDesignStudio.$(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 | -------------------------------------------------------------------------------- /TabbarTests/TabbarTests.m: -------------------------------------------------------------------------------- 1 | // 2 | // TabbarTests.m 3 | // TabbarTests 4 | // 5 | // Created by 1 on 15/6/18. 6 | // Copyright (c) 2015年 1. All rights reserved. 7 | // 8 | 9 | #import 10 | #import 11 | 12 | @interface TabbarTests : XCTestCase 13 | 14 | @end 15 | 16 | @implementation TabbarTests 17 | 18 | - (void)setUp { 19 | [super setUp]; 20 | // Put setup code here. This method is called before the invocation of each test method in the class. 21 | } 22 | 23 | - (void)tearDown { 24 | // Put teardown code here. This method is called after the invocation of each test method in the class. 25 | [super tearDown]; 26 | } 27 | 28 | - (void)testExample { 29 | // This is an example of a functional test case. 30 | XCTAssert(YES, @"Pass"); 31 | } 32 | 33 | - (void)testPerformanceExample { 34 | // This is an example of a performance test case. 35 | [self measureBlock:^{ 36 | // Put the code you want to measure the time of here. 37 | }]; 38 | } 39 | 40 | @end 41 | -------------------------------------------------------------------------------- /podfile: -------------------------------------------------------------------------------- 1 | pod 'pop', :git => 'https://github.com/facebook/pop.git' --------------------------------------------------------------------------------