Initial Commit of the new Lottie Renderer V2

This commit is contained in:
brandon_withrow 2017-07-28 14:46:27 -07:00
parent f537ef9764
commit 502b18ff46
252 changed files with 7291 additions and 1592 deletions

3
.gitignore vendored
View File

@ -16,4 +16,5 @@ Lottie-Screenshot/Lottie-Screenshot.xcodeproj/xcuserdata/
Lottie-Screenshot/Pods/Pods.xcodeproj/xcuserdata/ Lottie-Screenshot/Pods/Pods.xcodeproj/xcuserdata/
Example/.DS_Store Example/.DS_Store
Example/lottie-ios.xcodeproj/xcuserdata Example/lottie-ios.xcodeproj/xcuserdata
Example/lottie-ios.xcodeproj/xcuserdata Example/lottie-ios.xcodeproj/xcuserdata
.DS_Store

View File

@ -1,15 +1,15 @@
PODS: PODS:
- lottie-ios (1.5.0) - lottie-ios (1.5.2)
DEPENDENCIES: DEPENDENCIES:
- lottie-ios (from `../`) - lottie-ios (from `../`)
EXTERNAL SOURCES: EXTERNAL SOURCES:
lottie-ios: lottie-ios:
:path: ../ :path: "../"
SPEC CHECKSUMS: SPEC CHECKSUMS:
lottie-ios: 8b959bce82f84e42d832d605f5bab9d9edba8ad2 lottie-ios: 255a0e95973a5c4424e809d7a5c19f7384c73e84
PODFILE CHECKSUM: 6d1e1685b831b9c2307e9f025c2992df8d660bdb PODFILE CHECKSUM: 6d1e1685b831b9c2307e9f025c2992df8d660bdb

View File

@ -1,6 +1,6 @@
{ {
"name": "lottie-ios", "name": "lottie-ios",
"version": "1.5.0", "version": "1.5.2",
"summary": "Used to natively render vector animations exported from After Effects.", "summary": "Used to natively render vector animations exported from After Effects.",
"description": "Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with bodymovin and renders the vector animations natively on mobile and through React Native!\n\nFor the first time, designers can create and ship beautiful animations without an enginineer painstakingly recreating it be hand. Since the animation is backed by JSON they are extremely small in size but can be large in complexity! Animations can be played, resized, looped, sped up, slowed down, and even interactively scrubbed.", "description": "Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with bodymovin and renders the vector animations natively on mobile and through React Native!\n\nFor the first time, designers can create and ship beautiful animations without an enginineer painstakingly recreating it be hand. Since the animation is backed by JSON they are extremely small in size but can be large in complexity! Animations can be played, resized, looped, sped up, slowed down, and even interactively scrubbed.",
"homepage": "https://github.com/airbnb/lottie-ios", "homepage": "https://github.com/airbnb/lottie-ios",
@ -13,7 +13,7 @@
}, },
"source": { "source": {
"git": "https://github.com/airbnb/lottie-ios.git", "git": "https://github.com/airbnb/lottie-ios.git",
"tag": "1.5.0" "tag": "1.5.2"
}, },
"platforms": { "platforms": {
"ios": "8.0", "ios": "8.0",

View File

@ -1,15 +1,15 @@
PODS: PODS:
- lottie-ios (1.5.0) - lottie-ios (1.5.2)
DEPENDENCIES: DEPENDENCIES:
- lottie-ios (from `../`) - lottie-ios (from `../`)
EXTERNAL SOURCES: EXTERNAL SOURCES:
lottie-ios: lottie-ios:
:path: ../ :path: "../"
SPEC CHECKSUMS: SPEC CHECKSUMS:
lottie-ios: 8b959bce82f84e42d832d605f5bab9d9edba8ad2 lottie-ios: 255a0e95973a5c4424e809d7a5c19f7384c73e84
PODFILE CHECKSUM: 6d1e1685b831b9c2307e9f025c2992df8d660bdb PODFILE CHECKSUM: 6d1e1685b831b9c2307e9f025c2992df8d660bdb

File diff suppressed because it is too large Load Diff

View File

@ -15,7 +15,7 @@
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>FMWK</string> <string>FMWK</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>1.5.0</string> <string>1.5.2</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>????</string> <string>????</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>

View File

@ -15,7 +15,7 @@
<key>CFBundlePackageType</key> <key>CFBundlePackageType</key>
<string>FMWK</string> <string>FMWK</string>
<key>CFBundleShortVersionString</key> <key>CFBundleShortVersionString</key>
<string>1.5.0</string> <string>1.5.2</string>
<key>CFBundleSignature</key> <key>CFBundleSignature</key>
<string>????</string> <string>????</string>
<key>CFBundleVersion</key> <key>CFBundleVersion</key>

File diff suppressed because one or more lines are too long

View File

@ -20,54 +20,56 @@
6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; };
6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5B8195388D20070C39A /* InfoPlist.strings */; }; 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5B8195388D20070C39A /* InfoPlist.strings */; };
6003F5BC195388D20070C39A /* Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5BB195388D20070C39A /* Tests.m */; }; 6003F5BC195388D20070C39A /* Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5BB195388D20070C39A /* Tests.m */; };
622F76451F2AAA6500269858 /* LAQRScannerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 622F76441F2AAA6500269858 /* LAQRScannerViewController.m */; };
622F76471F2AAC8100269858 /* AVFoundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 622F76461F2AAC8100269858 /* AVFoundation.framework */; };
622F76C21F2BE58100269858 /* 9squares-AlBoardman.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76B51F2BE58100269858 /* 9squares-AlBoardman.json */; };
622F76C31F2BE58100269858 /* HamburgerArrow.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76B61F2BE58100269858 /* HamburgerArrow.json */; };
622F76C41F2BE58100269858 /* IconTransitions.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76B71F2BE58100269858 /* IconTransitions.json */; };
622F76C51F2BE58100269858 /* LottieLogo1_masked.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76B81F2BE58100269858 /* LottieLogo1_masked.json */; };
622F76C61F2BE58100269858 /* LottieLogo1.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76B91F2BE58100269858 /* LottieLogo1.json */; };
622F76C71F2BE58100269858 /* LottieLogo2.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76BA1F2BE58100269858 /* LottieLogo2.json */; };
622F76C81F2BE58100269858 /* MotionCorpse-Jrcanest.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76BB1F2BE58100269858 /* MotionCorpse-Jrcanest.json */; };
622F76C91F2BE58100269858 /* PinJump.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76BC1F2BE58100269858 /* PinJump.json */; };
622F76CA1F2BE58100269858 /* TwitterHeart.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76BD1F2BE58100269858 /* TwitterHeart.json */; };
622F76CC1F2BE58100269858 /* vcTransition1.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76BF1F2BE58100269858 /* vcTransition1.json */; };
622F76CD1F2BE58100269858 /* vcTransition2.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76C01F2BE58100269858 /* vcTransition2.json */; };
622F76CE1F2BE58100269858 /* Watermelon.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76C11F2BE58100269858 /* Watermelon.json */; };
622F76EE1F2BE63100269858 /* A.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D01F2BE63100269858 /* A.json */; };
622F76EF1F2BE63100269858 /* Apostrophe.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D11F2BE63100269858 /* Apostrophe.json */; };
622F76F01F2BE63100269858 /* B.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D21F2BE63100269858 /* B.json */; };
622F76F11F2BE63100269858 /* BlinkingCursor.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D31F2BE63100269858 /* BlinkingCursor.json */; };
622F76F21F2BE63100269858 /* C.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D41F2BE63100269858 /* C.json */; };
622F76F31F2BE63100269858 /* Colon.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D51F2BE63100269858 /* Colon.json */; };
622F76F41F2BE63100269858 /* Comma.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D61F2BE63100269858 /* Comma.json */; };
622F76F51F2BE63100269858 /* D.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D71F2BE63100269858 /* D.json */; };
622F76F61F2BE63100269858 /* E.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D81F2BE63100269858 /* E.json */; };
622F76F71F2BE63100269858 /* F.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76D91F2BE63100269858 /* F.json */; };
622F76F81F2BE63100269858 /* G.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76DA1F2BE63100269858 /* G.json */; };
622F76F91F2BE63100269858 /* H.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76DB1F2BE63100269858 /* H.json */; };
622F76FA1F2BE63100269858 /* I.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76DC1F2BE63100269858 /* I.json */; };
622F76FB1F2BE63100269858 /* J.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76DD1F2BE63100269858 /* J.json */; };
622F76FC1F2BE63100269858 /* K.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76DE1F2BE63100269858 /* K.json */; };
622F76FD1F2BE63100269858 /* L.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76DF1F2BE63100269858 /* L.json */; };
622F76FE1F2BE63100269858 /* M.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E01F2BE63100269858 /* M.json */; };
622F76FF1F2BE63100269858 /* N.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E11F2BE63100269858 /* N.json */; };
622F77001F2BE63100269858 /* O.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E21F2BE63100269858 /* O.json */; };
622F77011F2BE63100269858 /* P.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E31F2BE63100269858 /* P.json */; };
622F77021F2BE63100269858 /* Q.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E41F2BE63100269858 /* Q.json */; };
622F77031F2BE63100269858 /* R.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E51F2BE63100269858 /* R.json */; };
622F77041F2BE63100269858 /* S.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E61F2BE63100269858 /* S.json */; };
622F77051F2BE63100269858 /* T.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E71F2BE63100269858 /* T.json */; };
622F77061F2BE63100269858 /* U.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E81F2BE63100269858 /* U.json */; };
622F77071F2BE63100269858 /* V.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76E91F2BE63100269858 /* V.json */; };
622F77081F2BE63100269858 /* W.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76EA1F2BE63100269858 /* W.json */; };
622F77091F2BE63100269858 /* X.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76EB1F2BE63100269858 /* X.json */; };
622F770A1F2BE63100269858 /* Y.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76EC1F2BE63100269858 /* Y.json */; };
622F770B1F2BE63100269858 /* Z.json in Resources */ = {isa = PBXBuildFile; fileRef = 622F76ED1F2BE63100269858 /* Z.json */; };
62B2546A1E3A8D310035A842 /* LottieRootViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254631E3A8D310035A842 /* LottieRootViewController.m */; }; 62B2546A1E3A8D310035A842 /* LottieRootViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254631E3A8D310035A842 /* LottieRootViewController.m */; };
62B2546B1E3A8D310035A842 /* AnimationExplorerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254651E3A8D310035A842 /* AnimationExplorerViewController.m */; }; 62B2546B1E3A8D310035A842 /* AnimationExplorerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254651E3A8D310035A842 /* AnimationExplorerViewController.m */; };
62B2546C1E3A8D310035A842 /* AnimationTransitionViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254671E3A8D310035A842 /* AnimationTransitionViewController.m */; }; 62B2546C1E3A8D310035A842 /* AnimationTransitionViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254671E3A8D310035A842 /* AnimationTransitionViewController.m */; };
62B2546D1E3A8D310035A842 /* JSONExplorerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254691E3A8D310035A842 /* JSONExplorerViewController.m */; }; 62B2546D1E3A8D310035A842 /* JSONExplorerViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254691E3A8D310035A842 /* JSONExplorerViewController.m */; };
62B254721E3A8D3B0035A842 /* TypingDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B2546F1E3A8D3B0035A842 /* TypingDemoViewController.m */; }; 62B254721E3A8D3B0035A842 /* TypingDemoViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B2546F1E3A8D3B0035A842 /* TypingDemoViewController.m */; };
62B254731E3A8D3B0035A842 /* AnimatedTextField.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254711E3A8D3B0035A842 /* AnimatedTextField.m */; }; 62B254731E3A8D3B0035A842 /* AnimatedTextField.m in Sources */ = {isa = PBXBuildFile; fileRef = 62B254711E3A8D3B0035A842 /* AnimatedTextField.m */; };
62B254A21E3A90040035A842 /* 9squares-AlBoardman.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254771E3A90040035A842 /* 9squares-AlBoardman.json */; };
62B254A31E3A90040035A842 /* HamburgerArrow.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254781E3A90040035A842 /* HamburgerArrow.json */; };
62B254A41E3A90040035A842 /* IconTransitions.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254791E3A90040035A842 /* IconTransitions.json */; };
62B254A51E3A90040035A842 /* LottieLogo1_masked.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2547A1E3A90040035A842 /* LottieLogo1_masked.json */; };
62B254A61E3A90040035A842 /* LottieLogo1.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2547B1E3A90040035A842 /* LottieLogo1.json */; };
62B254A71E3A90040035A842 /* LottieLogo2.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2547C1E3A90040035A842 /* LottieLogo2.json */; };
62B254A81E3A90040035A842 /* MotionCorpse-Jrcanest.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2547D1E3A90040035A842 /* MotionCorpse-Jrcanest.json */; };
62B254A91E3A90040035A842 /* PinJump.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2547E1E3A90040035A842 /* PinJump.json */; };
62B254AA1E3A90040035A842 /* TwitterHeart.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2547F1E3A90040035A842 /* TwitterHeart.json */; };
62B254AB1E3A90040035A842 /* A.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254811E3A90040035A842 /* A.json */; };
62B254AC1E3A90040035A842 /* Apostrophe.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254821E3A90040035A842 /* Apostrophe.json */; };
62B254AD1E3A90040035A842 /* B.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254831E3A90040035A842 /* B.json */; };
62B254AE1E3A90040035A842 /* BlinkingCursor.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254841E3A90040035A842 /* BlinkingCursor.json */; };
62B254AF1E3A90040035A842 /* C.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254851E3A90040035A842 /* C.json */; };
62B254B01E3A90040035A842 /* Colon.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254861E3A90040035A842 /* Colon.json */; };
62B254B11E3A90040035A842 /* Comma.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254871E3A90040035A842 /* Comma.json */; };
62B254B21E3A90040035A842 /* D.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254881E3A90040035A842 /* D.json */; };
62B254B31E3A90040035A842 /* E.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254891E3A90040035A842 /* E.json */; };
62B254B41E3A90040035A842 /* F.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2548A1E3A90040035A842 /* F.json */; };
62B254B51E3A90040035A842 /* G.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2548B1E3A90040035A842 /* G.json */; };
62B254B61E3A90040035A842 /* H.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2548C1E3A90040035A842 /* H.json */; };
62B254B71E3A90040035A842 /* I.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2548D1E3A90040035A842 /* I.json */; };
62B254B81E3A90040035A842 /* J.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2548E1E3A90040035A842 /* J.json */; };
62B254B91E3A90040035A842 /* K.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2548F1E3A90040035A842 /* K.json */; };
62B254BA1E3A90040035A842 /* L.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254901E3A90040035A842 /* L.json */; };
62B254BB1E3A90040035A842 /* M.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254911E3A90040035A842 /* M.json */; };
62B254BC1E3A90040035A842 /* N.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254921E3A90040035A842 /* N.json */; };
62B254BD1E3A90040035A842 /* O.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254931E3A90040035A842 /* O.json */; };
62B254BE1E3A90040035A842 /* P.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254941E3A90040035A842 /* P.json */; };
62B254BF1E3A90040035A842 /* Q.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254951E3A90040035A842 /* Q.json */; };
62B254C01E3A90040035A842 /* R.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254961E3A90040035A842 /* R.json */; };
62B254C11E3A90040035A842 /* S.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254971E3A90040035A842 /* S.json */; };
62B254C21E3A90040035A842 /* T.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254981E3A90040035A842 /* T.json */; };
62B254C31E3A90040035A842 /* U.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254991E3A90040035A842 /* U.json */; };
62B254C41E3A90040035A842 /* V.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2549A1E3A90040035A842 /* V.json */; };
62B254C51E3A90040035A842 /* W.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2549B1E3A90040035A842 /* W.json */; };
62B254C61E3A90040035A842 /* X.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2549C1E3A90040035A842 /* X.json */; };
62B254C71E3A90040035A842 /* Y.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2549D1E3A90040035A842 /* Y.json */; };
62B254C81E3A90040035A842 /* Z.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2549E1E3A90040035A842 /* Z.json */; };
62B254C91E3A90040035A842 /* vcTransition1.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2549F1E3A90040035A842 /* vcTransition1.json */; };
62B254CA1E3A90040035A842 /* vcTransition2.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254A01E3A90040035A842 /* vcTransition2.json */; };
62B254CB1E3A90040035A842 /* Watermelon.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254A11E3A90040035A842 /* Watermelon.json */; };
71719F9F1E33DC2100824A3D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 71719F9D1E33DC2100824A3D /* LaunchScreen.storyboard */; }; 71719F9F1E33DC2100824A3D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 71719F9D1E33DC2100824A3D /* LaunchScreen.storyboard */; };
873B8AEB1B1F5CCA007FD442 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 873B8AEA1B1F5CCA007FD442 /* Main.storyboard */; }; 873B8AEB1B1F5CCA007FD442 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 873B8AEA1B1F5CCA007FD442 /* Main.storyboard */; };
B8E8748514D4FA9C683B1711 /* Pods_lottie_ios_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4EBDFEA18138A27DD5A89337 /* Pods_lottie_ios_Tests.framework */; }; B8E8748514D4FA9C683B1711 /* Pods_lottie_ios_Tests.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 4EBDFEA18138A27DD5A89337 /* Pods_lottie_ios_Tests.framework */; };
@ -77,8 +79,6 @@
FA1F5A951E42B25500FF36BF /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = FA1F5A941E42B25500FF36BF /* ViewController.m */; }; FA1F5A951E42B25500FF36BF /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = FA1F5A941E42B25500FF36BF /* ViewController.m */; };
FA1F5A971E42B25500FF36BF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FA1F5A961E42B25500FF36BF /* Assets.xcassets */; }; FA1F5A971E42B25500FF36BF /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = FA1F5A961E42B25500FF36BF /* Assets.xcassets */; };
FA1F5A9A1E42B25500FF36BF /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FA1F5A981E42B25500FF36BF /* Main.storyboard */; }; FA1F5A9A1E42B25500FF36BF /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = FA1F5A981E42B25500FF36BF /* Main.storyboard */; };
FA1F5AB11E42C21600FF36BF /* LottieLogo1.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B2547B1E3A90040035A842 /* LottieLogo1.json */; };
FA1F5AB21E42C21C00FF36BF /* 9squares-AlBoardman.json in Resources */ = {isa = PBXBuildFile; fileRef = 62B254771E3A90040035A842 /* 9squares-AlBoardman.json */; };
FAFA304C27E35A5B877B245D /* Pods_Lottie_Example_MacOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AC7587B24F90B40ADD0CEA8C /* Pods_Lottie_Example_MacOS.framework */; }; FAFA304C27E35A5B877B245D /* Pods_Lottie_Example_MacOS.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AC7587B24F90B40ADD0CEA8C /* Pods_Lottie_Example_MacOS.framework */; };
/* End PBXBuildFile section */ /* End PBXBuildFile section */
@ -115,6 +115,51 @@
6003F5B9195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; }; 6003F5B9195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = "<group>"; };
6003F5BB195388D20070C39A /* Tests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Tests.m; sourceTree = "<group>"; }; 6003F5BB195388D20070C39A /* Tests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Tests.m; sourceTree = "<group>"; };
606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Tests-Prefix.pch"; sourceTree = "<group>"; }; 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Tests-Prefix.pch"; sourceTree = "<group>"; };
622F76431F2AAA6500269858 /* LAQRScannerViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LAQRScannerViewController.h; sourceTree = "<group>"; };
622F76441F2AAA6500269858 /* LAQRScannerViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LAQRScannerViewController.m; sourceTree = "<group>"; };
622F76461F2AAC8100269858 /* AVFoundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = AVFoundation.framework; path = System/Library/Frameworks/AVFoundation.framework; sourceTree = SDKROOT; };
622F76B51F2BE58100269858 /* 9squares-AlBoardman.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "9squares-AlBoardman.json"; sourceTree = "<group>"; };
622F76B61F2BE58100269858 /* HamburgerArrow.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = HamburgerArrow.json; sourceTree = "<group>"; };
622F76B71F2BE58100269858 /* IconTransitions.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = IconTransitions.json; sourceTree = "<group>"; };
622F76B81F2BE58100269858 /* LottieLogo1_masked.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = LottieLogo1_masked.json; sourceTree = "<group>"; };
622F76B91F2BE58100269858 /* LottieLogo1.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = LottieLogo1.json; sourceTree = "<group>"; };
622F76BA1F2BE58100269858 /* LottieLogo2.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = LottieLogo2.json; sourceTree = "<group>"; };
622F76BB1F2BE58100269858 /* MotionCorpse-Jrcanest.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "MotionCorpse-Jrcanest.json"; sourceTree = "<group>"; };
622F76BC1F2BE58100269858 /* PinJump.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = PinJump.json; sourceTree = "<group>"; };
622F76BD1F2BE58100269858 /* TwitterHeart.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = TwitterHeart.json; sourceTree = "<group>"; };
622F76BF1F2BE58100269858 /* vcTransition1.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = vcTransition1.json; sourceTree = "<group>"; };
622F76C01F2BE58100269858 /* vcTransition2.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = vcTransition2.json; sourceTree = "<group>"; };
622F76C11F2BE58100269858 /* Watermelon.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Watermelon.json; sourceTree = "<group>"; };
622F76D01F2BE63100269858 /* A.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = A.json; sourceTree = "<group>"; };
622F76D11F2BE63100269858 /* Apostrophe.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Apostrophe.json; sourceTree = "<group>"; };
622F76D21F2BE63100269858 /* B.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = B.json; sourceTree = "<group>"; };
622F76D31F2BE63100269858 /* BlinkingCursor.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = BlinkingCursor.json; sourceTree = "<group>"; };
622F76D41F2BE63100269858 /* C.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = C.json; sourceTree = "<group>"; };
622F76D51F2BE63100269858 /* Colon.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Colon.json; sourceTree = "<group>"; };
622F76D61F2BE63100269858 /* Comma.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Comma.json; sourceTree = "<group>"; };
622F76D71F2BE63100269858 /* D.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = D.json; sourceTree = "<group>"; };
622F76D81F2BE63100269858 /* E.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = E.json; sourceTree = "<group>"; };
622F76D91F2BE63100269858 /* F.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = F.json; sourceTree = "<group>"; };
622F76DA1F2BE63100269858 /* G.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = G.json; sourceTree = "<group>"; };
622F76DB1F2BE63100269858 /* H.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = H.json; sourceTree = "<group>"; };
622F76DC1F2BE63100269858 /* I.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = I.json; sourceTree = "<group>"; };
622F76DD1F2BE63100269858 /* J.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = J.json; sourceTree = "<group>"; };
622F76DE1F2BE63100269858 /* K.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = K.json; sourceTree = "<group>"; };
622F76DF1F2BE63100269858 /* L.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = L.json; sourceTree = "<group>"; };
622F76E01F2BE63100269858 /* M.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = M.json; sourceTree = "<group>"; };
622F76E11F2BE63100269858 /* N.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = N.json; sourceTree = "<group>"; };
622F76E21F2BE63100269858 /* O.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = O.json; sourceTree = "<group>"; };
622F76E31F2BE63100269858 /* P.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = P.json; sourceTree = "<group>"; };
622F76E41F2BE63100269858 /* Q.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Q.json; sourceTree = "<group>"; };
622F76E51F2BE63100269858 /* R.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = R.json; sourceTree = "<group>"; };
622F76E61F2BE63100269858 /* S.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = S.json; sourceTree = "<group>"; };
622F76E71F2BE63100269858 /* T.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = T.json; sourceTree = "<group>"; };
622F76E81F2BE63100269858 /* U.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = U.json; sourceTree = "<group>"; };
622F76E91F2BE63100269858 /* V.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = V.json; sourceTree = "<group>"; };
622F76EA1F2BE63100269858 /* W.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = W.json; sourceTree = "<group>"; };
622F76EB1F2BE63100269858 /* X.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = X.json; sourceTree = "<group>"; };
622F76EC1F2BE63100269858 /* Y.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Y.json; sourceTree = "<group>"; };
622F76ED1F2BE63100269858 /* Z.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Z.json; sourceTree = "<group>"; };
62569CB2461B12ABC97FCB96 /* lottie-ios.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = "lottie-ios.podspec"; path = "../lottie-ios.podspec"; sourceTree = "<group>"; }; 62569CB2461B12ABC97FCB96 /* lottie-ios.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = "lottie-ios.podspec"; path = "../lottie-ios.podspec"; sourceTree = "<group>"; };
62B254621E3A8D310035A842 /* LottieRootViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LottieRootViewController.h; sourceTree = "<group>"; }; 62B254621E3A8D310035A842 /* LottieRootViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = LottieRootViewController.h; sourceTree = "<group>"; };
62B254631E3A8D310035A842 /* LottieRootViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LottieRootViewController.m; sourceTree = "<group>"; }; 62B254631E3A8D310035A842 /* LottieRootViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = LottieRootViewController.m; sourceTree = "<group>"; };
@ -128,48 +173,6 @@
62B2546F1E3A8D3B0035A842 /* TypingDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TypingDemoViewController.m; sourceTree = "<group>"; }; 62B2546F1E3A8D3B0035A842 /* TypingDemoViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = TypingDemoViewController.m; sourceTree = "<group>"; };
62B254701E3A8D3B0035A842 /* AnimatedTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AnimatedTextField.h; sourceTree = "<group>"; }; 62B254701E3A8D3B0035A842 /* AnimatedTextField.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AnimatedTextField.h; sourceTree = "<group>"; };
62B254711E3A8D3B0035A842 /* AnimatedTextField.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnimatedTextField.m; sourceTree = "<group>"; }; 62B254711E3A8D3B0035A842 /* AnimatedTextField.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AnimatedTextField.m; sourceTree = "<group>"; };
62B254771E3A90040035A842 /* 9squares-AlBoardman.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = "9squares-AlBoardman.json"; path = "Assets/9squares-AlBoardman.json"; sourceTree = SOURCE_ROOT; };
62B254781E3A90040035A842 /* HamburgerArrow.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = HamburgerArrow.json; path = Assets/HamburgerArrow.json; sourceTree = SOURCE_ROOT; };
62B254791E3A90040035A842 /* IconTransitions.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = IconTransitions.json; path = Assets/IconTransitions.json; sourceTree = SOURCE_ROOT; };
62B2547A1E3A90040035A842 /* LottieLogo1_masked.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = LottieLogo1_masked.json; path = Assets/LottieLogo1_masked.json; sourceTree = SOURCE_ROOT; };
62B2547B1E3A90040035A842 /* LottieLogo1.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = LottieLogo1.json; path = Assets/LottieLogo1.json; sourceTree = SOURCE_ROOT; };
62B2547C1E3A90040035A842 /* LottieLogo2.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = LottieLogo2.json; path = Assets/LottieLogo2.json; sourceTree = SOURCE_ROOT; };
62B2547D1E3A90040035A842 /* MotionCorpse-Jrcanest.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = "MotionCorpse-Jrcanest.json"; path = "Assets/MotionCorpse-Jrcanest.json"; sourceTree = SOURCE_ROOT; };
62B2547E1E3A90040035A842 /* PinJump.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = PinJump.json; path = Assets/PinJump.json; sourceTree = SOURCE_ROOT; };
62B2547F1E3A90040035A842 /* TwitterHeart.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = TwitterHeart.json; path = Assets/TwitterHeart.json; sourceTree = SOURCE_ROOT; };
62B254811E3A90040035A842 /* A.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = A.json; sourceTree = "<group>"; };
62B254821E3A90040035A842 /* Apostrophe.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Apostrophe.json; sourceTree = "<group>"; };
62B254831E3A90040035A842 /* B.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = B.json; sourceTree = "<group>"; };
62B254841E3A90040035A842 /* BlinkingCursor.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = BlinkingCursor.json; sourceTree = "<group>"; };
62B254851E3A90040035A842 /* C.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = C.json; sourceTree = "<group>"; };
62B254861E3A90040035A842 /* Colon.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Colon.json; sourceTree = "<group>"; };
62B254871E3A90040035A842 /* Comma.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Comma.json; sourceTree = "<group>"; };
62B254881E3A90040035A842 /* D.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = D.json; sourceTree = "<group>"; };
62B254891E3A90040035A842 /* E.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = E.json; sourceTree = "<group>"; };
62B2548A1E3A90040035A842 /* F.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = F.json; sourceTree = "<group>"; };
62B2548B1E3A90040035A842 /* G.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = G.json; sourceTree = "<group>"; };
62B2548C1E3A90040035A842 /* H.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = H.json; sourceTree = "<group>"; };
62B2548D1E3A90040035A842 /* I.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = I.json; sourceTree = "<group>"; };
62B2548E1E3A90040035A842 /* J.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = J.json; sourceTree = "<group>"; };
62B2548F1E3A90040035A842 /* K.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = K.json; sourceTree = "<group>"; };
62B254901E3A90040035A842 /* L.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = L.json; sourceTree = "<group>"; };
62B254911E3A90040035A842 /* M.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = M.json; sourceTree = "<group>"; };
62B254921E3A90040035A842 /* N.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = N.json; sourceTree = "<group>"; };
62B254931E3A90040035A842 /* O.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = O.json; sourceTree = "<group>"; };
62B254941E3A90040035A842 /* P.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = P.json; sourceTree = "<group>"; };
62B254951E3A90040035A842 /* Q.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Q.json; sourceTree = "<group>"; };
62B254961E3A90040035A842 /* R.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = R.json; sourceTree = "<group>"; };
62B254971E3A90040035A842 /* S.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = S.json; sourceTree = "<group>"; };
62B254981E3A90040035A842 /* T.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = T.json; sourceTree = "<group>"; };
62B254991E3A90040035A842 /* U.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = U.json; sourceTree = "<group>"; };
62B2549A1E3A90040035A842 /* V.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = V.json; sourceTree = "<group>"; };
62B2549B1E3A90040035A842 /* W.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = W.json; sourceTree = "<group>"; };
62B2549C1E3A90040035A842 /* X.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = X.json; sourceTree = "<group>"; };
62B2549D1E3A90040035A842 /* Y.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Y.json; sourceTree = "<group>"; };
62B2549E1E3A90040035A842 /* Z.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = Z.json; sourceTree = "<group>"; };
62B2549F1E3A90040035A842 /* vcTransition1.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = vcTransition1.json; path = Assets/vcTransition1.json; sourceTree = SOURCE_ROOT; };
62B254A01E3A90040035A842 /* vcTransition2.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = vcTransition2.json; path = Assets/vcTransition2.json; sourceTree = SOURCE_ROOT; };
62B254A11E3A90040035A842 /* Watermelon.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; name = Watermelon.json; path = Assets/Watermelon.json; sourceTree = SOURCE_ROOT; };
687661C57667AB2C5371F7BB /* Pods-Lottie-Example-MacOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Lottie-Example-MacOS.release.xcconfig"; path = "Pods/Target Support Files/Pods-Lottie-Example-MacOS/Pods-Lottie-Example-MacOS.release.xcconfig"; sourceTree = "<group>"; }; 687661C57667AB2C5371F7BB /* Pods-Lottie-Example-MacOS.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Lottie-Example-MacOS.release.xcconfig"; path = "Pods/Target Support Files/Pods-Lottie-Example-MacOS/Pods-Lottie-Example-MacOS.release.xcconfig"; sourceTree = "<group>"; };
6BC326E3835099034E161393 /* Pods-Lottie-Example-MacOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Lottie-Example-MacOS.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Lottie-Example-MacOS/Pods-Lottie-Example-MacOS.debug.xcconfig"; sourceTree = "<group>"; }; 6BC326E3835099034E161393 /* Pods-Lottie-Example-MacOS.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Lottie-Example-MacOS.debug.xcconfig"; path = "Pods/Target Support Files/Pods-Lottie-Example-MacOS/Pods-Lottie-Example-MacOS.debug.xcconfig"; sourceTree = "<group>"; };
6DC4D284D6109D58EE331F86 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = "<group>"; }; 6DC4D284D6109D58EE331F86 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = "<group>"; };
@ -195,6 +198,7 @@
isa = PBXFrameworksBuildPhase; isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647; buildActionMask = 2147483647;
files = ( files = (
622F76471F2AAC8100269858 /* AVFoundation.framework in Frameworks */,
6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */, 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */,
6003F592195388D20070C39A /* UIKit.framework in Frameworks */, 6003F592195388D20070C39A /* UIKit.framework in Frameworks */,
6003F58E195388D20070C39A /* Foundation.framework in Frameworks */, 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */,
@ -263,6 +267,7 @@
6003F58C195388D20070C39A /* Frameworks */ = { 6003F58C195388D20070C39A /* Frameworks */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
622F76461F2AAC8100269858 /* AVFoundation.framework */,
6003F58D195388D20070C39A /* Foundation.framework */, 6003F58D195388D20070C39A /* Foundation.framework */,
6003F58F195388D20070C39A /* CoreGraphics.framework */, 6003F58F195388D20070C39A /* CoreGraphics.framework */,
6003F591195388D20070C39A /* UIKit.framework */, 6003F591195388D20070C39A /* UIKit.framework */,
@ -317,19 +322,19 @@
6003F5B6195388D20070C39A /* Supporting Files */ = { 6003F5B6195388D20070C39A /* Supporting Files */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
62B254801E3A90040035A842 /* TypeFace */, 622F76CF1F2BE63100269858 /* TypeFace */,
62B254771E3A90040035A842 /* 9squares-AlBoardman.json */, 622F76B51F2BE58100269858 /* 9squares-AlBoardman.json */,
62B254781E3A90040035A842 /* HamburgerArrow.json */, 622F76B61F2BE58100269858 /* HamburgerArrow.json */,
62B254791E3A90040035A842 /* IconTransitions.json */, 622F76B71F2BE58100269858 /* IconTransitions.json */,
62B2547A1E3A90040035A842 /* LottieLogo1_masked.json */, 622F76B81F2BE58100269858 /* LottieLogo1_masked.json */,
62B2547B1E3A90040035A842 /* LottieLogo1.json */, 622F76B91F2BE58100269858 /* LottieLogo1.json */,
62B2547C1E3A90040035A842 /* LottieLogo2.json */, 622F76BA1F2BE58100269858 /* LottieLogo2.json */,
62B2547D1E3A90040035A842 /* MotionCorpse-Jrcanest.json */, 622F76BB1F2BE58100269858 /* MotionCorpse-Jrcanest.json */,
62B2547E1E3A90040035A842 /* PinJump.json */, 622F76BC1F2BE58100269858 /* PinJump.json */,
62B2547F1E3A90040035A842 /* TwitterHeart.json */, 622F76BD1F2BE58100269858 /* TwitterHeart.json */,
62B2549F1E3A90040035A842 /* vcTransition1.json */, 622F76BF1F2BE58100269858 /* vcTransition1.json */,
62B254A01E3A90040035A842 /* vcTransition2.json */, 622F76C01F2BE58100269858 /* vcTransition2.json */,
62B254A11E3A90040035A842 /* Watermelon.json */, 622F76C11F2BE58100269858 /* Watermelon.json */,
6003F5B7195388D20070C39A /* Tests-Info.plist */, 6003F5B7195388D20070C39A /* Tests-Info.plist */,
6003F5B8195388D20070C39A /* InfoPlist.strings */, 6003F5B8195388D20070C39A /* InfoPlist.strings */,
606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */, 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */,
@ -348,6 +353,43 @@
name = "Podspec Metadata"; name = "Podspec Metadata";
sourceTree = "<group>"; sourceTree = "<group>";
}; };
622F76CF1F2BE63100269858 /* TypeFace */ = {
isa = PBXGroup;
children = (
622F76D01F2BE63100269858 /* A.json */,
622F76D11F2BE63100269858 /* Apostrophe.json */,
622F76D21F2BE63100269858 /* B.json */,
622F76D31F2BE63100269858 /* BlinkingCursor.json */,
622F76D41F2BE63100269858 /* C.json */,
622F76D51F2BE63100269858 /* Colon.json */,
622F76D61F2BE63100269858 /* Comma.json */,
622F76D71F2BE63100269858 /* D.json */,
622F76D81F2BE63100269858 /* E.json */,
622F76D91F2BE63100269858 /* F.json */,
622F76DA1F2BE63100269858 /* G.json */,
622F76DB1F2BE63100269858 /* H.json */,
622F76DC1F2BE63100269858 /* I.json */,
622F76DD1F2BE63100269858 /* J.json */,
622F76DE1F2BE63100269858 /* K.json */,
622F76DF1F2BE63100269858 /* L.json */,
622F76E01F2BE63100269858 /* M.json */,
622F76E11F2BE63100269858 /* N.json */,
622F76E21F2BE63100269858 /* O.json */,
622F76E31F2BE63100269858 /* P.json */,
622F76E41F2BE63100269858 /* Q.json */,
622F76E51F2BE63100269858 /* R.json */,
622F76E61F2BE63100269858 /* S.json */,
622F76E71F2BE63100269858 /* T.json */,
622F76E81F2BE63100269858 /* U.json */,
622F76E91F2BE63100269858 /* V.json */,
622F76EA1F2BE63100269858 /* W.json */,
622F76EB1F2BE63100269858 /* X.json */,
622F76EC1F2BE63100269858 /* Y.json */,
622F76ED1F2BE63100269858 /* Z.json */,
);
path = TypeFace;
sourceTree = "<group>";
};
62B254741E3A8D400035A842 /* Animation Explorer */ = { 62B254741E3A8D400035A842 /* Animation Explorer */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
@ -355,6 +397,8 @@
62B254691E3A8D310035A842 /* JSONExplorerViewController.m */, 62B254691E3A8D310035A842 /* JSONExplorerViewController.m */,
62B254641E3A8D310035A842 /* AnimationExplorerViewController.h */, 62B254641E3A8D310035A842 /* AnimationExplorerViewController.h */,
62B254651E3A8D310035A842 /* AnimationExplorerViewController.m */, 62B254651E3A8D310035A842 /* AnimationExplorerViewController.m */,
622F76431F2AAA6500269858 /* LAQRScannerViewController.h */,
622F76441F2AAA6500269858 /* LAQRScannerViewController.m */,
); );
name = "Animation Explorer"; name = "Animation Explorer";
sourceTree = "<group>"; sourceTree = "<group>";
@ -379,44 +423,6 @@
name = "Typing Animation Demo"; name = "Typing Animation Demo";
sourceTree = "<group>"; sourceTree = "<group>";
}; };
62B254801E3A90040035A842 /* TypeFace */ = {
isa = PBXGroup;
children = (
62B254811E3A90040035A842 /* A.json */,
62B254821E3A90040035A842 /* Apostrophe.json */,
62B254831E3A90040035A842 /* B.json */,
62B254841E3A90040035A842 /* BlinkingCursor.json */,
62B254851E3A90040035A842 /* C.json */,
62B254861E3A90040035A842 /* Colon.json */,
62B254871E3A90040035A842 /* Comma.json */,
62B254881E3A90040035A842 /* D.json */,
62B254891E3A90040035A842 /* E.json */,
62B2548A1E3A90040035A842 /* F.json */,
62B2548B1E3A90040035A842 /* G.json */,
62B2548C1E3A90040035A842 /* H.json */,
62B2548D1E3A90040035A842 /* I.json */,
62B2548E1E3A90040035A842 /* J.json */,
62B2548F1E3A90040035A842 /* K.json */,
62B254901E3A90040035A842 /* L.json */,
62B254911E3A90040035A842 /* M.json */,
62B254921E3A90040035A842 /* N.json */,
62B254931E3A90040035A842 /* O.json */,
62B254941E3A90040035A842 /* P.json */,
62B254951E3A90040035A842 /* Q.json */,
62B254961E3A90040035A842 /* R.json */,
62B254971E3A90040035A842 /* S.json */,
62B254981E3A90040035A842 /* T.json */,
62B254991E3A90040035A842 /* U.json */,
62B2549A1E3A90040035A842 /* V.json */,
62B2549B1E3A90040035A842 /* W.json */,
62B2549C1E3A90040035A842 /* X.json */,
62B2549D1E3A90040035A842 /* Y.json */,
62B2549E1E3A90040035A842 /* Z.json */,
);
name = TypeFace;
path = Assets/TypeFace;
sourceTree = SOURCE_ROOT;
};
FA1F5A8C1E42B25500FF36BF /* Example for lottie-macos */ = { FA1F5A8C1E42B25500FF36BF /* Example for lottie-macos */ = {
isa = PBXGroup; isa = PBXGroup;
children = ( children = (
@ -514,6 +520,9 @@
LastUpgradeCheck = 0720; LastUpgradeCheck = 0720;
ORGANIZATIONNAME = "Brandon Withrow"; ORGANIZATIONNAME = "Brandon Withrow";
TargetAttributes = { TargetAttributes = {
6003F589195388D20070C39A = {
DevelopmentTeam = VM8ZLJG6JZ;
};
6003F5AD195388D20070C39A = { 6003F5AD195388D20070C39A = {
TestTargetID = 6003F589195388D20070C39A; TestTargetID = 6003F589195388D20070C39A;
}; };
@ -548,53 +557,53 @@
isa = PBXResourcesBuildPhase; isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647; buildActionMask = 2147483647;
files = ( files = (
62B254C01E3A90040035A842 /* R.json in Resources */, 622F76F01F2BE63100269858 /* B.json in Resources */,
62B254B61E3A90040035A842 /* H.json in Resources */, 622F77001F2BE63100269858 /* O.json in Resources */,
62B254B41E3A90040035A842 /* F.json in Resources */, 622F76F71F2BE63100269858 /* F.json in Resources */,
62B254AD1E3A90040035A842 /* B.json in Resources */,
48A852311E3A9E71000AD155 /* lottie_logo.png in Resources */, 48A852311E3A9E71000AD155 /* lottie_logo.png in Resources */,
62B254B01E3A90040035A842 /* Colon.json in Resources */, 622F76F11F2BE63100269858 /* BlinkingCursor.json in Resources */,
62B254C51E3A90040035A842 /* W.json in Resources */, 622F76C71F2BE58100269858 /* LottieLogo2.json in Resources */,
622F76C91F2BE58100269858 /* PinJump.json in Resources */,
622F76F51F2BE63100269858 /* D.json in Resources */,
622F76CD1F2BE58100269858 /* vcTransition2.json in Resources */,
873B8AEB1B1F5CCA007FD442 /* Main.storyboard in Resources */, 873B8AEB1B1F5CCA007FD442 /* Main.storyboard in Resources */,
62B254BC1E3A90040035A842 /* N.json in Resources */, 622F77091F2BE63100269858 /* X.json in Resources */,
62B254BB1E3A90040035A842 /* M.json in Resources */, 622F76F41F2BE63100269858 /* Comma.json in Resources */,
62B254B11E3A90040035A842 /* Comma.json in Resources */, 622F76FD1F2BE63100269858 /* L.json in Resources */,
62B254B51E3A90040035A842 /* G.json in Resources */, 622F76C81F2BE58100269858 /* MotionCorpse-Jrcanest.json in Resources */,
62B254A21E3A90040035A842 /* 9squares-AlBoardman.json in Resources */, 622F77031F2BE63100269858 /* R.json in Resources */,
71719F9F1E33DC2100824A3D /* LaunchScreen.storyboard in Resources */, 71719F9F1E33DC2100824A3D /* LaunchScreen.storyboard in Resources */,
62B254AB1E3A90040035A842 /* A.json in Resources */, 622F76CA1F2BE58100269858 /* TwitterHeart.json in Resources */,
62B254A31E3A90040035A842 /* HamburgerArrow.json in Resources */, 622F76F91F2BE63100269858 /* H.json in Resources */,
62B254C91E3A90040035A842 /* vcTransition1.json in Resources */, 622F76C61F2BE58100269858 /* LottieLogo1.json in Resources */,
62B254CA1E3A90040035A842 /* vcTransition2.json in Resources */, 622F77051F2BE63100269858 /* T.json in Resources */,
62B254BF1E3A90040035A842 /* Q.json in Resources */, 622F77021F2BE63100269858 /* Q.json in Resources */,
62B254A61E3A90040035A842 /* LottieLogo1.json in Resources */, 622F76FB1F2BE63100269858 /* J.json in Resources */,
62B254AF1E3A90040035A842 /* C.json in Resources */, 622F77081F2BE63100269858 /* W.json in Resources */,
62B254C11E3A90040035A842 /* S.json in Resources */, 622F76F61F2BE63100269858 /* E.json in Resources */,
62B254C61E3A90040035A842 /* X.json in Resources */, 622F76C41F2BE58100269858 /* IconTransitions.json in Resources */,
62B254B71E3A90040035A842 /* I.json in Resources */,
62B254A81E3A90040035A842 /* MotionCorpse-Jrcanest.json in Resources */,
62B254BE1E3A90040035A842 /* P.json in Resources */,
62B254C81E3A90040035A842 /* Z.json in Resources */,
62B254AC1E3A90040035A842 /* Apostrophe.json in Resources */,
62B254A41E3A90040035A842 /* IconTransitions.json in Resources */,
6003F5A9195388D20070C39A /* Images.xcassets in Resources */, 6003F5A9195388D20070C39A /* Images.xcassets in Resources */,
62B254B21E3A90040035A842 /* D.json in Resources */, 622F76C31F2BE58100269858 /* HamburgerArrow.json in Resources */,
62B254A51E3A90040035A842 /* LottieLogo1_masked.json in Resources */, 622F77071F2BE63100269858 /* V.json in Resources */,
62B254C41E3A90040035A842 /* V.json in Resources */, 622F77061F2BE63100269858 /* U.json in Resources */,
62B254AA1E3A90040035A842 /* TwitterHeart.json in Resources */, 622F76CE1F2BE58100269858 /* Watermelon.json in Resources */,
62B254B91E3A90040035A842 /* K.json in Resources */, 622F77041F2BE63100269858 /* S.json in Resources */,
62B254BA1E3A90040035A842 /* L.json in Resources */, 622F770A1F2BE63100269858 /* Y.json in Resources */,
62B254CB1E3A90040035A842 /* Watermelon.json in Resources */,
62B254B31E3A90040035A842 /* E.json in Resources */,
62B254A71E3A90040035A842 /* LottieLogo2.json in Resources */,
62B254AE1E3A90040035A842 /* BlinkingCursor.json in Resources */,
62B254C71E3A90040035A842 /* Y.json in Resources */,
6003F598195388D20070C39A /* InfoPlist.strings in Resources */, 6003F598195388D20070C39A /* InfoPlist.strings in Resources */,
62B254C21E3A90040035A842 /* T.json in Resources */, 622F76FE1F2BE63100269858 /* M.json in Resources */,
62B254BD1E3A90040035A842 /* O.json in Resources */, 622F76F31F2BE63100269858 /* Colon.json in Resources */,
62B254A91E3A90040035A842 /* PinJump.json in Resources */, 622F76FF1F2BE63100269858 /* N.json in Resources */,
62B254B81E3A90040035A842 /* J.json in Resources */, 622F76C21F2BE58100269858 /* 9squares-AlBoardman.json in Resources */,
62B254C31E3A90040035A842 /* U.json in Resources */, 622F77011F2BE63100269858 /* P.json in Resources */,
622F76C51F2BE58100269858 /* LottieLogo1_masked.json in Resources */,
622F76FC1F2BE63100269858 /* K.json in Resources */,
622F76CC1F2BE58100269858 /* vcTransition1.json in Resources */,
622F76FA1F2BE63100269858 /* I.json in Resources */,
622F76F21F2BE63100269858 /* C.json in Resources */,
622F76F81F2BE63100269858 /* G.json in Resources */,
622F76EF1F2BE63100269858 /* Apostrophe.json in Resources */,
622F76EE1F2BE63100269858 /* A.json in Resources */,
622F770B1F2BE63100269858 /* Z.json in Resources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };
@ -611,9 +620,7 @@
buildActionMask = 2147483647; buildActionMask = 2147483647;
files = ( files = (
FA1F5A971E42B25500FF36BF /* Assets.xcassets in Resources */, FA1F5A971E42B25500FF36BF /* Assets.xcassets in Resources */,
FA1F5AB11E42C21600FF36BF /* LottieLogo1.json in Resources */,
FA1F5A9A1E42B25500FF36BF /* Main.storyboard in Resources */, FA1F5A9A1E42B25500FF36BF /* Main.storyboard in Resources */,
FA1F5AB21E42C21C00FF36BF /* 9squares-AlBoardman.json in Resources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };
@ -770,6 +777,7 @@
62B254731E3A8D3B0035A842 /* AnimatedTextField.m in Sources */, 62B254731E3A8D3B0035A842 /* AnimatedTextField.m in Sources */,
62B2546C1E3A8D310035A842 /* AnimationTransitionViewController.m in Sources */, 62B2546C1E3A8D310035A842 /* AnimationTransitionViewController.m in Sources */,
6003F59A195388D20070C39A /* main.m in Sources */, 6003F59A195388D20070C39A /* main.m in Sources */,
622F76451F2AAA6500269858 /* LAQRScannerViewController.m in Sources */,
); );
runOnlyForDeploymentPostprocessing = 0; runOnlyForDeploymentPostprocessing = 0;
}; };
@ -915,6 +923,7 @@
baseConfigurationReference = 99F3982078CC5B93DA1AFF47 /* Pods-Lottie-Example.debug.xcconfig */; baseConfigurationReference = 99F3982078CC5B93DA1AFF47 /* Pods-Lottie-Example.debug.xcconfig */;
buildSettings = { buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
DEVELOPMENT_TEAM = VM8ZLJG6JZ;
GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "lottie-ios/lottie-ios-Prefix.pch"; GCC_PREFIX_HEADER = "lottie-ios/lottie-ios-Prefix.pch";
INFOPLIST_FILE = "lottie-ios/lottie-ios-Info.plist"; INFOPLIST_FILE = "lottie-ios/lottie-ios-Info.plist";
@ -931,6 +940,7 @@
baseConfigurationReference = D8C83F4B06A893EA3322E53A /* Pods-Lottie-Example.release.xcconfig */; baseConfigurationReference = D8C83F4B06A893EA3322E53A /* Pods-Lottie-Example.release.xcconfig */;
buildSettings = { buildSettings = {
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
DEVELOPMENT_TEAM = VM8ZLJG6JZ;
GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PRECOMPILE_PREFIX_HEADER = YES;
GCC_PREFIX_HEADER = "lottie-ios/lottie-ios-Prefix.pch"; GCC_PREFIX_HEADER = "lottie-ios/lottie-ios-Prefix.pch";
INFOPLIST_FILE = "lottie-ios/lottie-ios-Info.plist"; INFOPLIST_FILE = "lottie-ios/lottie-ios-Info.plist";

View File

@ -8,6 +8,7 @@
#import "AnimationExplorerViewController.h" #import "AnimationExplorerViewController.h"
#import "JSONExplorerViewController.h" #import "JSONExplorerViewController.h"
#import "LAQRScannerViewController.h"
#import <Lottie/Lottie.h> #import <Lottie/Lottie.h>
typedef enum : NSUInteger { typedef enum : NSUInteger {
@ -144,6 +145,17 @@ typedef enum : NSUInteger {
} }
- (void)_showURLInput { - (void)_showURLInput {
LAQRScannerViewController *qrVC = [[LAQRScannerViewController alloc] init];
[qrVC setCompletionBlock:^(NSString *selectedAnimation) {
if (selectedAnimation) {
[self _loadAnimationFromURLString:selectedAnimation];
}
[self dismissViewControllerAnimated:YES completion:NULL];
}];
UINavigationController *nav = [[UINavigationController alloc] initWithRootViewController:qrVC];
[self presentViewController:nav animated:YES completion:NULL];
return;
UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Load From URL" UIAlertController *alert = [UIAlertController alertControllerWithTitle:@"Load From URL"
message:NULL message:NULL
preferredStyle:UIAlertControllerStyleAlert]; preferredStyle:UIAlertControllerStyleAlert];

View File

@ -0,0 +1,15 @@
//
// LAQRScannerViewController.h
// lottie-ios
//
// Created by brandon_withrow on 7/27/17.
// Copyright © 2017 Brandon Withrow. All rights reserved.
//
#import <UIKit/UIKit.h>
@interface LAQRScannerViewController : UIViewController
@property (nonatomic, copy) void (^completionBlock)(NSString *jsonURL);
@end

View File

@ -0,0 +1,106 @@
//
// LAQRScannerViewController.m
// lottie-ios
//
// Created by brandon_withrow on 7/27/17.
// Copyright © 2017 Brandon Withrow. All rights reserved.
//
#import "LAQRScannerViewController.h"
#import <AVFoundation/AVFoundation.h>
@interface LAQRScannerViewController () <AVCaptureMetadataOutputObjectsDelegate>
@property (nonatomic) BOOL isReading;
@property (strong, nonatomic) UIView *viewPreview;
@property (nonatomic, strong) AVCaptureSession *captureSession;
@property (nonatomic, strong) AVCaptureVideoPreviewLayer *videoPreviewLayer;
@end
@implementation LAQRScannerViewController
- (void)viewDidLoad {
[super viewDidLoad];
self.view.backgroundColor = [UIColor whiteColor];
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Close"
style:UIBarButtonItemStyleDone
target:self
action:@selector(_closePressed)];
self.viewPreview = [[UIView alloc] initWithFrame:self.view.bounds];
self.viewPreview.autoresizingMask = UIViewAutoresizingFlexibleWidth | UIViewAutoresizingFlexibleHeight;
[self.view addSubview:self.viewPreview];
_isReading = NO;
_captureSession = nil;
}
- (void)viewDidAppear:(BOOL)animated {
[super viewDidAppear:animated];
if (!_isReading) {
_isReading = [self startReading];
}
}
- (BOOL)startReading {
NSError *error;
AVCaptureDevice *captureDevice = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:captureDevice error:&error];
if (!input) {
NSLog(@"%@", [error localizedDescription]);
return NO;
}
_captureSession = [[AVCaptureSession alloc] init];
[_captureSession addInput:input];
AVCaptureMetadataOutput *captureMetadataOutput = [[AVCaptureMetadataOutput alloc] init];
[_captureSession addOutput:captureMetadataOutput];
dispatch_queue_t dispatchQueue;
dispatchQueue = dispatch_queue_create("myQueue", NULL);
[captureMetadataOutput setMetadataObjectsDelegate:self queue:dispatchQueue];
[captureMetadataOutput setMetadataObjectTypes:[NSArray arrayWithObject:AVMetadataObjectTypeQRCode]];
if (_videoPreviewLayer) {
[_videoPreviewLayer removeFromSuperlayer];
_videoPreviewLayer = nil;
}
_videoPreviewLayer = [[AVCaptureVideoPreviewLayer alloc] initWithSession:_captureSession];
[_videoPreviewLayer setVideoGravity:AVLayerVideoGravityResizeAspectFill];
[_videoPreviewLayer setFrame:_viewPreview.layer.bounds];
[_viewPreview.layer addSublayer:_videoPreviewLayer];
[_captureSession startRunning];
return YES;
}
-(void)captureOutput:(AVCaptureOutput *)captureOutput didOutputMetadataObjects:(NSArray *)metadataObjects fromConnection:(AVCaptureConnection *)connection{
if (metadataObjects != nil && [metadataObjects count] > 0) {
AVMetadataMachineReadableCodeObject *metadataObj = [metadataObjects objectAtIndex:0];
if ([[metadataObj type] isEqualToString:AVMetadataObjectTypeQRCode]) {
[self performSelectorOnMainThread:@selector(stopReadingWithString:) withObject:[metadataObj stringValue] waitUntilDone:NO];
}
}
}
- (void)stopReadingWithString:(NSString *)urlString {
if (_isReading) {
_isReading = NO;
[_captureSession stopRunning];
_captureSession = nil;
[_videoPreviewLayer removeFromSuperlayer];
_videoPreviewLayer = nil;
if (self.completionBlock) {
self.completionBlock(urlString);
}
}
}
- (void)_closePressed {
[self stopReadingWithString:nil];
}
@end

View File

@ -2,6 +2,8 @@
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"> <!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0"> <plist version="1.0">
<dict> <dict>
<key>NSCameraUsageDescription</key>
<string>Used to scan Barcodes</string>
<key>CFBundleDevelopmentRegion</key> <key>CFBundleDevelopmentRegion</key>
<string>en</string> <string>en</string>
<key>CFBundleDisplayName</key> <key>CFBundleDisplayName</key>

View File

@ -37,7 +37,7 @@
self.animationView.animationProgress = progress; self.animationView.animationProgress = progress;
[self waitForExpectationsWithTimeout:1 handler:^(NSError * _Nullable error) { [self waitForExpectationsWithTimeout:1 handler:^(NSError * _Nullable error) {
FBSnapshotVerifyView(self.animationView.layer, nil); FBSnapshotVerifyViewWithOptions(self.animationView.layer, nil, FBSnapshotTestCaseDefaultSuffixes(), 0.005);
}]; }];
} }

View File

@ -1,6 +1,6 @@
PODS: PODS:
- FBSnapshotTestCase/Core (2.1.4) - FBSnapshotTestCase/Core (2.1.4)
- lottie-ios (1.5.1) - lottie-ios (1.5.2)
DEPENDENCIES: DEPENDENCIES:
- FBSnapshotTestCase/Core - FBSnapshotTestCase/Core
@ -8,11 +8,11 @@ DEPENDENCIES:
EXTERNAL SOURCES: EXTERNAL SOURCES:
lottie-ios: lottie-ios:
:path: ../ :path: "../"
SPEC CHECKSUMS: SPEC CHECKSUMS:
FBSnapshotTestCase: 094f9f314decbabe373b87cc339bea235a63e07a FBSnapshotTestCase: 094f9f314decbabe373b87cc339bea235a63e07a
lottie-ios: f680a7c4cb7a567ecf258fde0f967913aff111b8 lottie-ios: 255a0e95973a5c4424e809d7a5c19f7384c73e84
PODFILE CHECKSUM: 3901ca88392ceeedc459164e7080c5f357e54e04 PODFILE CHECKSUM: 3901ca88392ceeedc459164e7080c5f357e54e04

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/LOTAnimatorNode.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTArrayInterpolator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/AnimatableProperties/LOTBezierData.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/Extensions/LOTBezierPath.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/AnimatorNodes/LOTCircleAnimator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTColorInterpolator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/AnimatableLayers/LOTCompositionContainer.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/RenderNodes/LOTFillRenderer.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/RenderNodes/LOTGradientFillRender.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/AnimatableProperties/LOTKeyframe.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/AnimatableLayers/LOTLayerContainer.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/AnimatableLayers/LOTMaskContainer.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTNumberInterpolator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/AnimatorNodes/LOTPathAnimator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTPathInterpolator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTPointInterpolator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/AnimatorNodes/LOTPolygonAnimator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/AnimatorNodes/LOTPolystarAnimator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTRectInterpolator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/RenderNodes/LOTRenderGroup.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/LOTRenderNode.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/RenderNodes/LOTRepeaterRenderer.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/AnimatorNodes/LOTRoundedRectAnimator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/Models/LOTShapeGradientFill.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/Models/LOTShapeRepeater.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/Models/LOTShapeStar.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTSizeInterpolator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/RenderNodes/LOTStrokeRenderer.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTTransformInterpolator.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/ManipulatorNodes/LOTTrimPathNode.h

View File

@ -0,0 +1 @@
../../../../../../lottie-ios/Classes/RenderSystem/InterpolatorNodes/LOTValueInterpolator.h

View File

@ -1,6 +1,6 @@
{ {
"name": "lottie-ios", "name": "lottie-ios",
"version": "1.5.1", "version": "1.5.2",
"summary": "Used to natively render vector animations exported from After Effects.", "summary": "Used to natively render vector animations exported from After Effects.",
"description": "Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with bodymovin and renders the vector animations natively on mobile and through React Native!\n\nFor the first time, designers can create and ship beautiful animations without an enginineer painstakingly recreating it be hand. Since the animation is backed by JSON they are extremely small in size but can be large in complexity! Animations can be played, resized, looped, sped up, slowed down, and even interactively scrubbed.", "description": "Lottie is a mobile library for Android and iOS that parses Adobe After Effects animations exported as json with bodymovin and renders the vector animations natively on mobile and through React Native!\n\nFor the first time, designers can create and ship beautiful animations without an enginineer painstakingly recreating it be hand. Since the animation is backed by JSON they are extremely small in size but can be large in complexity! Animations can be played, resized, looped, sped up, slowed down, and even interactively scrubbed.",
"homepage": "https://github.com/airbnb/lottie-ios", "homepage": "https://github.com/airbnb/lottie-ios",
@ -13,7 +13,7 @@
}, },
"source": { "source": {
"git": "https://github.com/airbnb/lottie-ios.git", "git": "https://github.com/airbnb/lottie-ios.git",
"tag": "1.5.1" "tag": "1.5.2"
}, },
"platforms": { "platforms": {
"ios": "8.0", "ios": "8.0",

View File

@ -1,6 +1,6 @@
PODS: PODS:
- FBSnapshotTestCase/Core (2.1.4) - FBSnapshotTestCase/Core (2.1.4)
- lottie-ios (1.5.1) - lottie-ios (1.5.2)
DEPENDENCIES: DEPENDENCIES:
- FBSnapshotTestCase/Core - FBSnapshotTestCase/Core
@ -8,11 +8,11 @@ DEPENDENCIES:
EXTERNAL SOURCES: EXTERNAL SOURCES:
lottie-ios: lottie-ios:
:path: ../ :path: "../"
SPEC CHECKSUMS: SPEC CHECKSUMS:
FBSnapshotTestCase: 094f9f314decbabe373b87cc339bea235a63e07a FBSnapshotTestCase: 094f9f314decbabe373b87cc339bea235a63e07a
lottie-ios: f680a7c4cb7a567ecf258fde0f967913aff111b8 lottie-ios: 255a0e95973a5c4424e809d7a5c19f7384c73e84
PODFILE CHECKSUM: 3901ca88392ceeedc459164e7080c5f357e54e04 PODFILE CHECKSUM: 3901ca88392ceeedc459164e7080c5f357e54e04

File diff suppressed because it is too large Load Diff

Binary file not shown.

Before

Width:  |  Height:  |  Size: 34 KiB

After

Width:  |  Height:  |  Size: 34 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 31 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 48 KiB

After

Width:  |  Height:  |  Size: 48 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 3.6 KiB

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 31 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 32 KiB

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

Before

Width:  |  Height:  |  Size: 58 KiB

After

Width:  |  Height:  |  Size: 58 KiB

Some files were not shown because too many files have changed in this diff Show More