Compare commits
47 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 550c7aa195 | |||
| 69b1cc6d22 | |||
| eebd1356e9 | |||
| 04bf9a7c7a | |||
| b7f4bb87d4 | |||
| 787ec87abf | |||
| 2e94769bd3 | |||
| 75f7785f71 | |||
| 4e0a19958f | |||
| 7561da5d7e | |||
| c4a8a1b5b7 | |||
| 702a21ed8f | |||
| b44ae189f9 | |||
| 36256171a1 | |||
| be535d4e91 | |||
| 8342e44b8c | |||
| 27c48a2f68 | |||
| d29e86ea17 | |||
| d00019e3a3 | |||
| 9436995265 | |||
| 42f70a3546 | |||
| ba7dd7847c | |||
| ac1559f8b0 | |||
| 2b2b1f068c | |||
| fff4434923 | |||
| f9455456b1 | |||
| 8f13b5ce91 | |||
| ced108bee8 | |||
| 215aadd502 | |||
| e8ec9ebc74 | |||
| 8157c8d465 | |||
| f658f94c69 | |||
| 85462bf513 | |||
| 77300f8afa | |||
| 04f51a0069 | |||
| 7b02dd484c | |||
| 8ac39b1dd7 | |||
| 79b4d4a0d0 | |||
| 3d7ffe23f5 | |||
| 445c5d424f | |||
| 7289830f99 | |||
| 7feb720b6f | |||
| f67a0b539c | |||
| 5dc8b23b40 | |||
| 0e27171ed0 | |||
| b1b8a5ca13 | |||
| be91a02ba1 |
@@ -23,6 +23,9 @@ DerivedData
|
||||
.bundle
|
||||
|
||||
Carthage
|
||||
Cartfile
|
||||
Cartfile.resolved
|
||||
|
||||
# We recommend against adding the Pods directory to your .gitignore. However
|
||||
# you should judge for yourself, the pros and cons are mentioned at:
|
||||
# http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control
|
||||
|
||||
@@ -0,0 +1 @@
|
||||
4.0
|
||||
+2
-2
@@ -3,12 +3,12 @@
|
||||
# * https://github.com/supermarin/xcpretty#usage
|
||||
|
||||
language: objective-c
|
||||
osx_image: xcode8
|
||||
osx_image: xcode9
|
||||
# cache: cocoapods
|
||||
# podfile: Example/Podfile
|
||||
before_install:
|
||||
- gem install cocoapods # Since Travis is not always on latest version
|
||||
# - pod install --project-directory=Example
|
||||
script:
|
||||
- set -o pipefail && xcodebuild -workspace Example/ScalingCarousel.xcworkspace -scheme ScalingCarousel-Example -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=10.0,name=iPhone 7' ONLY_ACTIVE_ARCH=NO | xcpretty
|
||||
- set -o pipefail && xcodebuild -workspace Example/ScalingCarousel.xcworkspace -scheme ScalingCarousel-Example -sdk iphonesimulator -destination 'platform=iOS Simulator,OS=11.0,name=iPhone 7' ONLY_ACTIVE_ARCH=NO | xcpretty
|
||||
- pod lib lint
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 18 KiB |
@@ -1,16 +1,16 @@
|
||||
PODS:
|
||||
- ScalingCarousel (0.1.0)
|
||||
- ScalingCarousel (2.0.3)
|
||||
|
||||
DEPENDENCIES:
|
||||
- ScalingCarousel (from `../`)
|
||||
|
||||
EXTERNAL SOURCES:
|
||||
ScalingCarousel:
|
||||
:path: "../"
|
||||
:path: ../
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
ScalingCarousel: 9ccb50bc287484fb5ca64ab50e0a4938521a93fb
|
||||
ScalingCarousel: 826fde3393a7c5c68184256fd760dcbed77334d1
|
||||
|
||||
PODFILE CHECKSUM: aaf53f72e837000e0cec9b542eb92f29695d1812
|
||||
|
||||
COCOAPODS: 1.1.1
|
||||
COCOAPODS: 1.3.1
|
||||
|
||||
+7
-7
@@ -1,9 +1,9 @@
|
||||
{
|
||||
"name": "ScalingCarousel",
|
||||
"version": "0.1.0",
|
||||
"summary": "A short description of ScalingCarousel.",
|
||||
"description": "TODO: Add long description of the pod here.",
|
||||
"homepage": "https://github.com/<GITHUB_USERNAME>/ScalingCarousel",
|
||||
"version": "2.0.3",
|
||||
"summary": "A super simple carousel view with scaling transitions written in Swift",
|
||||
"description": "ScalingCarousel provides a simple carousel-style collection view.\nIt takes care of cell presentation, scaling each cell as the collection view is scrolled.\n\nIt is used in Bikey to present bike station information.",
|
||||
"homepage": "https://github.com/superpeteblaze/ScalingCarousel",
|
||||
"license": {
|
||||
"type": "MIT",
|
||||
"file": "LICENSE"
|
||||
@@ -12,11 +12,11 @@
|
||||
"Pete Smith": "peadar81@gmail.com"
|
||||
},
|
||||
"source": {
|
||||
"git": "https://github.com/<GITHUB_USERNAME>/ScalingCarousel.git",
|
||||
"tag": "0.1.0"
|
||||
"git": "https://github.com/superpeteblaze/ScalingCarousel.git",
|
||||
"tag": "v2.0.3"
|
||||
},
|
||||
"platforms": {
|
||||
"ios": "8.0"
|
||||
"ios": "9.0"
|
||||
},
|
||||
"source_files": "ScalingCarousel/Classes/**/*"
|
||||
}
|
||||
|
||||
+4
-4
@@ -1,16 +1,16 @@
|
||||
PODS:
|
||||
- ScalingCarousel (0.1.0)
|
||||
- ScalingCarousel (2.0.3)
|
||||
|
||||
DEPENDENCIES:
|
||||
- ScalingCarousel (from `../`)
|
||||
|
||||
EXTERNAL SOURCES:
|
||||
ScalingCarousel:
|
||||
:path: "../"
|
||||
:path: ../
|
||||
|
||||
SPEC CHECKSUMS:
|
||||
ScalingCarousel: 9ccb50bc287484fb5ca64ab50e0a4938521a93fb
|
||||
ScalingCarousel: 826fde3393a7c5c68184256fd760dcbed77334d1
|
||||
|
||||
PODFILE CHECKSUM: aaf53f72e837000e0cec9b542eb92f29695d1812
|
||||
|
||||
COCOAPODS: 1.1.1
|
||||
COCOAPODS: 1.3.1
|
||||
|
||||
+245
-228
@@ -7,18 +7,18 @@
|
||||
objects = {
|
||||
|
||||
/* Begin PBXBuildFile section */
|
||||
26F064BD081593535BBDB2C68E04D550 /* ScalingCarouselLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 37A3EC0C68FCE63CEBA8C19F8A2CFC65 /* ScalingCarouselLayout.swift */; };
|
||||
27A0BB7A30438992BE7C1A9363A9F9E0 /* ScalingCarouselCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAA27D20C0D8A0EED452BB86BE10F0F1 /* ScalingCarouselCell.swift */; };
|
||||
2BE172BF2E56D9BC90BA029558B5A71E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */; };
|
||||
33594403D855E2ADBEB733AAC47ADEEC /* Pods-ScalingCarousel_Example-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DEEB538732DC02FB5EC65782B2D0F167 /* Pods-ScalingCarousel_Example-dummy.m */; };
|
||||
34C556CEF7FE0FFD3C7C162EB5BF1A78 /* Pods-ScalingCarousel_Tests-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 8C0D80E7E8FB25B22F57888FACDBE974 /* Pods-ScalingCarousel_Tests-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
3A6FFA8218F967FFF02EB97B1D4AA0BB /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */; };
|
||||
3F823075192ADD163E3454310B33184A /* ScalingCarousel-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = E2EAEF86695413083D9741AF8ABEDC48 /* ScalingCarousel-dummy.m */; };
|
||||
64154477D5ED5C8310788EAB9CF0062C /* ScalingCarouselView.swift in Sources */ = {isa = PBXBuildFile; fileRef = BA88835C545DBDE8A6A6984912DA1E88 /* ScalingCarouselView.swift */; };
|
||||
4C0B62A5EE83FC654E522FB60E48ECF9 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */; };
|
||||
6C9F005E8437070D3DD2F704157C24A7 /* ScalingCarouselView.swift in Sources */ = {isa = PBXBuildFile; fileRef = D6C7224921252FFDE0B9FCC0AAE76FFA /* ScalingCarouselView.swift */; };
|
||||
893ABBC4812641019C2AA3094A793FA4 /* Pods-ScalingCarousel_Example-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 417419558A0521B8032CB632897EDA4D /* Pods-ScalingCarousel_Example-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
91123B629044BB7BE8BDF8AA12B163C6 /* ScalingCarouselLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = BFA8691AE35E197F6C1CFAD0EC691EE2 /* ScalingCarouselLayout.swift */; };
|
||||
99A524CD948092F92866BE556933DC15 /* Pods-ScalingCarousel_Tests-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 2C01AFAA1D0858D6F6046BD05C27FC43 /* Pods-ScalingCarousel_Tests-dummy.m */; };
|
||||
A7994875EC044776588CDC2E6448A5C2 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */; };
|
||||
EA6E2F43E897FA989879E0586EC079BF /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */; };
|
||||
FE33D169AC22A803E4E6E74E9AB39E70 /* ScalingCarousel-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 7BFB9D767913A7796D061F8BC5CA992A /* ScalingCarousel-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
FF968DEF08483A53756ADF9E7F9A99FD /* ScalingCarouselCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 0F029A4B46297C4E659645069518366C /* ScalingCarouselCell.swift */; };
|
||||
D34CF80A45E5360D0F5CFB7E72920653 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */; };
|
||||
EF5D132A7D36C897373997FD9055237F /* ScalingCarousel-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = DFCD1998B6AE481AA8256ED50B03ABD2 /* ScalingCarousel-dummy.m */; };
|
||||
FE33D169AC22A803E4E6E74E9AB39E70 /* ScalingCarousel-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = 335149B8220D4A234AA411174DBA44DB /* ScalingCarousel-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
/* Begin PBXContainerItemProxy section */
|
||||
@@ -33,38 +33,38 @@
|
||||
|
||||
/* Begin PBXFileReference section */
|
||||
01C79AA056271150E9D54DCE90188F19 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
0BD8EDDEBABC48D3179839296EFE8607 /* ScalingCarousel.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ScalingCarousel.xcconfig; sourceTree = "<group>"; };
|
||||
0F029A4B46297C4E659645069518366C /* ScalingCarouselCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ScalingCarouselCell.swift; sourceTree = "<group>"; };
|
||||
19C1707F62C29F4AC2B96390F0071185 /* Pods-ScalingCarousel_Tests.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ScalingCarousel_Tests.release.xcconfig"; sourceTree = "<group>"; };
|
||||
2C01AFAA1D0858D6F6046BD05C27FC43 /* Pods-ScalingCarousel_Tests-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ScalingCarousel_Tests-dummy.m"; sourceTree = "<group>"; };
|
||||
2CAFE40C0C16F348A480291448686E57 /* Pods-ScalingCarousel_Example.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ScalingCarousel_Example.release.xcconfig"; sourceTree = "<group>"; };
|
||||
2FC8311F81D0078492903ED596FAD12D /* Pods-ScalingCarousel_Tests-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-ScalingCarousel_Tests-acknowledgements.markdown"; sourceTree = "<group>"; };
|
||||
335149B8220D4A234AA411174DBA44DB /* ScalingCarousel-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ScalingCarousel-umbrella.h"; sourceTree = "<group>"; };
|
||||
37A3EC0C68FCE63CEBA8C19F8A2CFC65 /* ScalingCarouselLayout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScalingCarouselLayout.swift; path = ScalingCarousel/Classes/ScalingCarouselLayout.swift; sourceTree = "<group>"; };
|
||||
417419558A0521B8032CB632897EDA4D /* Pods-ScalingCarousel_Example-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ScalingCarousel_Example-umbrella.h"; sourceTree = "<group>"; };
|
||||
46063D6D7EC96F1D89CD1690B12B3386 /* Pods_ScalingCarousel_Example.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ScalingCarousel_Example.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
49960ABF17F9896BA2B38A7D834B48B8 /* ScalingCarousel-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ScalingCarousel-prefix.pch"; sourceTree = "<group>"; };
|
||||
54A5F7B5A891F3A4A73A5ACFFB5DA584 /* Pods-ScalingCarousel_Tests-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ScalingCarousel_Tests-resources.sh"; sourceTree = "<group>"; };
|
||||
63CAC80E88518EA41BCE34FCD671DA66 /* Pods-ScalingCarousel_Example-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ScalingCarousel_Example-resources.sh"; sourceTree = "<group>"; };
|
||||
6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
|
||||
669A2515A368DC8D20D8009B9D46BAB9 /* Pods-ScalingCarousel_Tests.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ScalingCarousel_Tests.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
6820F178C5F5E9638CACA2814BABA73E /* Pods-ScalingCarousel_Example.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-ScalingCarousel_Example.debug.xcconfig"; sourceTree = "<group>"; };
|
||||
6D39A9D4CC078A542994C4BBA5844B20 /* ScalingCarousel.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = ScalingCarousel.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
7A6882E2B3C060D623F392A7891C244D /* Pods-ScalingCarousel_Example-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-ScalingCarousel_Example-acknowledgements.markdown"; sourceTree = "<group>"; };
|
||||
7BFB9D767913A7796D061F8BC5CA992A /* ScalingCarousel-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ScalingCarousel-umbrella.h"; sourceTree = "<group>"; };
|
||||
8A4628742CEC5B0630D62508B0BA697C /* Pods-ScalingCarousel_Example-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ScalingCarousel_Example-acknowledgements.plist"; sourceTree = "<group>"; };
|
||||
8AF0E85305599AEC400CA91492155CAB /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
8C0D80E7E8FB25B22F57888FACDBE974 /* Pods-ScalingCarousel_Tests-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-ScalingCarousel_Tests-umbrella.h"; sourceTree = "<group>"; };
|
||||
91AA682B515A5FDE6F771021DFDD353A /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; };
|
||||
BA88835C545DBDE8A6A6984912DA1E88 /* ScalingCarouselView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ScalingCarouselView.swift; sourceTree = "<group>"; };
|
||||
BFA8691AE35E197F6C1CFAD0EC691EE2 /* ScalingCarouselLayout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = ScalingCarouselLayout.swift; sourceTree = "<group>"; };
|
||||
CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS10.0.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; };
|
||||
BD520245C4D4A7A13DE1BE577F61E8E4 /* ScalingCarousel.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = ScalingCarousel.modulemap; sourceTree = "<group>"; };
|
||||
C2133317DCFFA26562C1654402B69F61 /* ScalingCarousel-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "ScalingCarousel-prefix.pch"; sourceTree = "<group>"; };
|
||||
CE29603D532D094B23C15A8A8D5CABE3 /* Pods-ScalingCarousel_Tests.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "Pods-ScalingCarousel_Tests.modulemap"; sourceTree = "<group>"; };
|
||||
D4F1C843CC4888CA20EA2B705BFB0568 /* Pods-ScalingCarousel_Example-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ScalingCarousel_Example-frameworks.sh"; sourceTree = "<group>"; };
|
||||
D5A628B595D8EC3228A730A252D05A87 /* Pods_ScalingCarousel_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ScalingCarousel_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
D6C7224921252FFDE0B9FCC0AAE76FFA /* ScalingCarouselView.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScalingCarouselView.swift; path = ScalingCarousel/Classes/ScalingCarouselView.swift; sourceTree = "<group>"; };
|
||||
DAA27D20C0D8A0EED452BB86BE10F0F1 /* ScalingCarouselCell.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; name = ScalingCarouselCell.swift; path = ScalingCarousel/Classes/ScalingCarouselCell.swift; sourceTree = "<group>"; };
|
||||
DE4B6042EF8A3E9AAE963A5944CAA511 /* Pods-ScalingCarousel_Example.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "Pods-ScalingCarousel_Example.modulemap"; sourceTree = "<group>"; };
|
||||
DEEB538732DC02FB5EC65782B2D0F167 /* Pods-ScalingCarousel_Example-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-ScalingCarousel_Example-dummy.m"; sourceTree = "<group>"; };
|
||||
E2EAEF86695413083D9741AF8ABEDC48 /* ScalingCarousel-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ScalingCarousel-dummy.m"; sourceTree = "<group>"; };
|
||||
DFCD1998B6AE481AA8256ED50B03ABD2 /* ScalingCarousel-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "ScalingCarousel-dummy.m"; sourceTree = "<group>"; };
|
||||
F1EEA5C4B78F1D741C77D94C79C3DCB8 /* ScalingCarousel.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = ScalingCarousel.xcconfig; sourceTree = "<group>"; };
|
||||
F57B2F4B768DBC2566345CA81CF4B55B /* Pods-ScalingCarousel_Tests-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-ScalingCarousel_Tests-frameworks.sh"; sourceTree = "<group>"; };
|
||||
F5B267F679A27AE6EA9396313E979303 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
F8B36020E0B338F93C9F943ADC21CA56 /* ScalingCarousel.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = ScalingCarousel.modulemap; sourceTree = "<group>"; };
|
||||
F96BEA12D6F0A5E84D844BF7AFF3DAF1 /* Pods-ScalingCarousel_Tests-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-ScalingCarousel_Tests-acknowledgements.plist"; sourceTree = "<group>"; };
|
||||
/* End PBXFileReference section */
|
||||
|
||||
@@ -73,7 +73,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
A7994875EC044776588CDC2E6448A5C2 /* Foundation.framework in Frameworks */,
|
||||
4C0B62A5EE83FC654E522FB60E48ECF9 /* Foundation.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -81,7 +81,7 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
3A6FFA8218F967FFF02EB97B1D4AA0BB /* Foundation.framework in Frameworks */,
|
||||
2BE172BF2E56D9BC90BA029558B5A71E /* Foundation.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -89,35 +89,13 @@
|
||||
isa = PBXFrameworksBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
EA6E2F43E897FA989879E0586EC079BF /* Foundation.framework in Frameworks */,
|
||||
D34CF80A45E5360D0F5CFB7E72920653 /* Foundation.framework in Frameworks */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
/* End PBXFrameworksBuildPhase section */
|
||||
|
||||
/* Begin PBXGroup section */
|
||||
186EEF7F3A96733FBE75660905E9F20D /* Development Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
B00117DBB43A702D83647200F4B03A80 /* ScalingCarousel */,
|
||||
);
|
||||
name = "Development Pods";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
21E707B8F34DD92FB280AB6E22FF35F8 /* Support Files */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
F5B267F679A27AE6EA9396313E979303 /* Info.plist */,
|
||||
F8B36020E0B338F93C9F943ADC21CA56 /* ScalingCarousel.modulemap */,
|
||||
0BD8EDDEBABC48D3179839296EFE8607 /* ScalingCarousel.xcconfig */,
|
||||
E2EAEF86695413083D9741AF8ABEDC48 /* ScalingCarousel-dummy.m */,
|
||||
49960ABF17F9896BA2B38A7D834B48B8 /* ScalingCarousel-prefix.pch */,
|
||||
7BFB9D767913A7796D061F8BC5CA992A /* ScalingCarousel-umbrella.h */,
|
||||
);
|
||||
name = "Support Files";
|
||||
path = "Example/Pods/Target Support Files/ScalingCarousel";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
26558FF8DC31DFFD2A6F09A7FFF87B64 /* Pods-ScalingCarousel_Example */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -136,29 +114,37 @@
|
||||
path = "Target Support Files/Pods-ScalingCarousel_Example";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
2AF1556C49363C2BA1C10796E1C93F58 /* Classes */ = {
|
||||
2737B2E84D3569FFF39C699145545759 /* ScalingCarousel */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
0F029A4B46297C4E659645069518366C /* ScalingCarouselCell.swift */,
|
||||
BFA8691AE35E197F6C1CFAD0EC691EE2 /* ScalingCarouselLayout.swift */,
|
||||
BA88835C545DBDE8A6A6984912DA1E88 /* ScalingCarouselView.swift */,
|
||||
DAA27D20C0D8A0EED452BB86BE10F0F1 /* ScalingCarouselCell.swift */,
|
||||
37A3EC0C68FCE63CEBA8C19F8A2CFC65 /* ScalingCarouselLayout.swift */,
|
||||
D6C7224921252FFDE0B9FCC0AAE76FFA /* ScalingCarouselView.swift */,
|
||||
6EE22356647F452DFDA08D4C0D45C9FC /* Support Files */,
|
||||
);
|
||||
path = Classes;
|
||||
name = ScalingCarousel;
|
||||
path = ../..;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
7531C8F8DE19F1AA3C8A7AC97A91DC29 /* iOS */ = {
|
||||
6EE22356647F452DFDA08D4C0D45C9FC /* Support Files */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
CBB3DE36805AF21409EC968A9691732F /* Foundation.framework */,
|
||||
8AF0E85305599AEC400CA91492155CAB /* Info.plist */,
|
||||
BD520245C4D4A7A13DE1BE577F61E8E4 /* ScalingCarousel.modulemap */,
|
||||
F1EEA5C4B78F1D741C77D94C79C3DCB8 /* ScalingCarousel.xcconfig */,
|
||||
DFCD1998B6AE481AA8256ED50B03ABD2 /* ScalingCarousel-dummy.m */,
|
||||
C2133317DCFFA26562C1654402B69F61 /* ScalingCarousel-prefix.pch */,
|
||||
335149B8220D4A234AA411174DBA44DB /* ScalingCarousel-umbrella.h */,
|
||||
);
|
||||
name = iOS;
|
||||
name = "Support Files";
|
||||
path = "Example/Pods/Target Support Files/ScalingCarousel";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
7DB346D0F39D3F0E887471402A8071AB = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */,
|
||||
186EEF7F3A96733FBE75660905E9F20D /* Development Pods */,
|
||||
D50F92D1CCECB13952FF5EFB41855D26 /* Development Pods */,
|
||||
BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */,
|
||||
DF205412166AD4C7C4F9E2A1F6C5D495 /* Products */,
|
||||
AE7C671E1AA1C30241E0C18BEE9EF597 /* Targets Support Files */,
|
||||
@@ -183,14 +169,6 @@
|
||||
path = "Target Support Files/Pods-ScalingCarousel_Tests";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
9D9D714D4FAE0AFBBBF5DD39E9C1623D /* ScalingCarousel */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
2AF1556C49363C2BA1C10796E1C93F58 /* Classes */,
|
||||
);
|
||||
path = ScalingCarousel;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
AE7C671E1AA1C30241E0C18BEE9EF597 /* Targets Support Files */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -200,24 +178,30 @@
|
||||
name = "Targets Support Files";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
B00117DBB43A702D83647200F4B03A80 /* ScalingCarousel */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
9D9D714D4FAE0AFBBBF5DD39E9C1623D /* ScalingCarousel */,
|
||||
21E707B8F34DD92FB280AB6E22FF35F8 /* Support Files */,
|
||||
);
|
||||
name = ScalingCarousel;
|
||||
path = ../..;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
7531C8F8DE19F1AA3C8A7AC97A91DC29 /* iOS */,
|
||||
D35AF013A5F0BAD4F32504907A52519E /* iOS */,
|
||||
);
|
||||
name = Frameworks;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
D35AF013A5F0BAD4F32504907A52519E /* iOS */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
6604A7D69453B4569E4E4827FB9155A9 /* Foundation.framework */,
|
||||
);
|
||||
name = iOS;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
D50F92D1CCECB13952FF5EFB41855D26 /* Development Pods */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
2737B2E84D3569FFF39C699145545759 /* ScalingCarousel */,
|
||||
);
|
||||
name = "Development Pods";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
DF205412166AD4C7C4F9E2A1F6C5D495 /* Products */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -297,7 +281,7 @@
|
||||
isa = PBXNativeTarget;
|
||||
buildConfigurationList = D9748A2A9B62FF73FF20C1A225EC05E1 /* Build configuration list for PBXNativeTarget "ScalingCarousel" */;
|
||||
buildPhases = (
|
||||
1CA44DA1BEB0A754DD0607DBDB3055F8 /* Sources */,
|
||||
97577D86CD6762A8402F7DEA1F2C4214 /* Sources */,
|
||||
7C7484ABAAD475E4CCA134D19FC54C98 /* Frameworks */,
|
||||
4AA008077710ECDE2DC858A8C3647E42 /* Headers */,
|
||||
);
|
||||
@@ -316,8 +300,13 @@
|
||||
D41D8CD98F00B204E9800998ECF8427E /* Project object */ = {
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastSwiftUpdateCheck = 0730;
|
||||
LastUpgradeCheck = 0700;
|
||||
LastSwiftUpdateCheck = 0830;
|
||||
LastUpgradeCheck = 0930;
|
||||
TargetAttributes = {
|
||||
E9582E7E712D7CD7A32DF86E8120CBC5 = {
|
||||
LastSwiftMigration = 0930;
|
||||
};
|
||||
};
|
||||
};
|
||||
buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */;
|
||||
compatibilityVersion = "Xcode 3.2";
|
||||
@@ -347,14 +336,14 @@
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
1CA44DA1BEB0A754DD0607DBDB3055F8 /* Sources */ = {
|
||||
97577D86CD6762A8402F7DEA1F2C4214 /* Sources */ = {
|
||||
isa = PBXSourcesBuildPhase;
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
3F823075192ADD163E3454310B33184A /* ScalingCarousel-dummy.m in Sources */,
|
||||
FF968DEF08483A53756ADF9E7F9A99FD /* ScalingCarouselCell.swift in Sources */,
|
||||
91123B629044BB7BE8BDF8AA12B163C6 /* ScalingCarouselLayout.swift in Sources */,
|
||||
64154477D5ED5C8310788EAB9CF0062C /* ScalingCarouselView.swift in Sources */,
|
||||
EF5D132A7D36C897373997FD9055237F /* ScalingCarousel-dummy.m in Sources */,
|
||||
27A0BB7A30438992BE7C1A9363A9F9E0 /* ScalingCarouselCell.swift in Sources */,
|
||||
26F064BD081593535BBDB2C68E04D550 /* ScalingCarouselLayout.swift in Sources */,
|
||||
6C9F005E8437070D3DD2F704157C24A7 /* ScalingCarouselView.swift in Sources */,
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
};
|
||||
@@ -378,28 +367,57 @@
|
||||
/* End PBXTargetDependency section */
|
||||
|
||||
/* Begin XCBuildConfiguration section */
|
||||
4567549E773691F389CC7A4BB3F30F20 /* Release */ = {
|
||||
188BFDBCECD2DE06114560AC8D7C8047 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 2CAFE40C0C16F348A480291448686E57 /* Pods-ScalingCarousel_Example.release.xcconfig */;
|
||||
baseConfigurationReference = F1EEA5C4B78F1D741C77D94C79C3DCB8 /* ScalingCarousel.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
GCC_PREFIX_HEADER = "Target Support Files/ScalingCarousel/ScalingCarousel-prefix.pch";
|
||||
INFOPLIST_FILE = "Target Support Files/ScalingCarousel/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MODULEMAP_FILE = "Target Support Files/ScalingCarousel/ScalingCarousel.modulemap";
|
||||
PRODUCT_NAME = ScalingCarousel;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) ";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
|
||||
SWIFT_VERSION = 4.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
58AE32E1CA70594875449DEA71C9947F /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 2CAFE40C0C16F348A480291448686E57 /* Pods-ScalingCarousel_Example.release.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-ScalingCarousel_Example/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.3;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MACH_O_TYPE = staticlib;
|
||||
MODULEMAP_FILE = "Target Support Files/Pods-ScalingCarousel_Example/Pods-ScalingCarousel_Example.modulemap";
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_LIBTOOLFLAGS = "";
|
||||
PODS_ROOT = "$(SRCROOT)";
|
||||
@@ -407,34 +425,91 @@
|
||||
PRODUCT_NAME = Pods_ScalingCarousel_Example;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
494C5F5AC2A5AE0A5D3E13BB044F7E52 /* Debug */ = {
|
||||
6F9224530522DD3C735EC96CF142642E /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 669A2515A368DC8D20D8009B9D46BAB9 /* Pods-ScalingCarousel_Tests.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGNING_REQUIRED = NO;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"POD_CONFIGURATION_RELEASE=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/;
|
||||
STRIP_INSTALLED_PRODUCT = NO;
|
||||
SWIFT_COMPILATION_MODE = wholemodule;
|
||||
SYMROOT = "${SRCROOT}/../build";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
AD82CF7B85C0F8F39585250F842B53E0 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 19C1707F62C29F4AC2B96390F0071185 /* Pods-ScalingCarousel_Tests.release.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-ScalingCarousel_Tests/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.3;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MACH_O_TYPE = staticlib;
|
||||
MODULEMAP_FILE = "Target Support Files/Pods-ScalingCarousel_Tests/Pods-ScalingCarousel_Tests.modulemap";
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_LIBTOOLFLAGS = "";
|
||||
PODS_ROOT = "$(SRCROOT)";
|
||||
@@ -443,149 +518,93 @@
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
73DC2E4656B578DCC92757CFCA8157E6 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 0BD8EDDEBABC48D3179839296EFE8607 /* ScalingCarousel.xcconfig */;
|
||||
buildSettings = {
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_PREFIX_HEADER = "Target Support Files/ScalingCarousel/ScalingCarousel-prefix.pch";
|
||||
INFOPLIST_FILE = "Target Support Files/ScalingCarousel/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MODULEMAP_FILE = "Target Support Files/ScalingCarousel/ScalingCarousel.modulemap";
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
PRODUCT_NAME = ScalingCarousel;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_VERSION = 3.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
8DED8AD26D381A6ACFF202E5217EC498 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGNING_REQUIRED = NO;
|
||||
COPY_PHASE_STRIP = YES;
|
||||
ENABLE_NS_ASSERTIONS = NO;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"POD_CONFIGURATION_RELEASE=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/;
|
||||
STRIP_INSTALLED_PRODUCT = NO;
|
||||
SYMROOT = "${SRCROOT}/../build";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
9E1E4E48AF2EAB23169E611BF694090A /* Debug */ = {
|
||||
B57951D085A1B98A97F8A1062A5E5C5B /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
buildSettings = {
|
||||
ALWAYS_SEARCH_USER_PATHS = NO;
|
||||
CLANG_ANALYZER_NONNULL = YES;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x";
|
||||
CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE;
|
||||
CLANG_CXX_LANGUAGE_STANDARD = "gnu++14";
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
CODE_SIGNING_REQUIRED = NO;
|
||||
COPY_PHASE_STRIP = NO;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
ENABLE_TESTABILITY = YES;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu99;
|
||||
GCC_C_LANGUAGE_STANDARD = gnu11;
|
||||
GCC_DYNAMIC_NO_PIC = NO;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_OPTIMIZATION_LEVEL = 0;
|
||||
GCC_PREPROCESSOR_DEFINITIONS = (
|
||||
"POD_CONFIGURATION_DEBUG=1",
|
||||
"DEBUG=1",
|
||||
"$(inherited)",
|
||||
);
|
||||
GCC_SYMBOLS_PRIVATE_EXTERN = NO;
|
||||
GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES;
|
||||
GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR;
|
||||
GCC_WARN_UNDECLARED_SELECTOR = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES;
|
||||
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
|
||||
GCC_WARN_UNUSED_FUNCTION = YES;
|
||||
GCC_WARN_UNUSED_VARIABLE = YES;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
ONLY_ACTIVE_ARCH = YES;
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
PROVISIONING_PROFILE_SPECIFIER = NO_SIGNING/;
|
||||
STRIP_INSTALLED_PRODUCT = NO;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||
SYMROOT = "${SRCROOT}/../build";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
AFDD8F9077316B4F5933239D791C84C9 /* Debug */ = {
|
||||
BE5DA8288B9C30557A65503795355E54 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 6820F178C5F5E9638CACA2814BABA73E /* Pods-ScalingCarousel_Example.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-ScalingCarousel_Example/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.3;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MACH_O_TYPE = staticlib;
|
||||
MODULEMAP_FILE = "Target Support Files/Pods-ScalingCarousel_Example/Pods-ScalingCarousel_Example.modulemap";
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_LIBTOOLFLAGS = "";
|
||||
PODS_ROOT = "$(SRCROOT)";
|
||||
@@ -593,6 +612,7 @@
|
||||
PRODUCT_NAME = Pods_ScalingCarousel_Example;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
@@ -600,61 +620,25 @@
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
B42C8177BFB100081A3C97776E71EA39 /* Debug */ = {
|
||||
DCE6D7527B48F1CB709D41D13B2050E9 /* Debug */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 0BD8EDDEBABC48D3179839296EFE8607 /* ScalingCarousel.xcconfig */;
|
||||
baseConfigurationReference = 669A2515A368DC8D20D8009B9D46BAB9 /* Pods-ScalingCarousel_Tests.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = dwarf;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
GCC_PREFIX_HEADER = "Target Support Files/ScalingCarousel/ScalingCarousel-prefix.pch";
|
||||
INFOPLIST_FILE = "Target Support Files/ScalingCarousel/Info.plist";
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-ScalingCarousel_Tests/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MODULEMAP_FILE = "Target Support Files/ScalingCarousel/ScalingCarousel.modulemap";
|
||||
MTL_ENABLE_DEBUG_INFO = YES;
|
||||
PRODUCT_NAME = ScalingCarousel;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Onone";
|
||||
SWIFT_VERSION = 3.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
CBD0FC1D2ADF8EF8B6CC4DCD7253FE16 /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 19C1707F62C29F4AC2B96390F0071185 /* Pods-ScalingCarousel_Tests.release.xcconfig */;
|
||||
buildSettings = {
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
ENABLE_STRICT_OBJC_MSGSEND = YES;
|
||||
GCC_NO_COMMON_BLOCKS = YES;
|
||||
INFOPLIST_FILE = "Target Support Files/Pods-ScalingCarousel_Tests/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 8.3;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MACH_O_TYPE = staticlib;
|
||||
MODULEMAP_FILE = "Target Support Files/Pods-ScalingCarousel_Tests/Pods-ScalingCarousel_Tests.modulemap";
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
OTHER_LDFLAGS = "";
|
||||
OTHER_LIBTOOLFLAGS = "";
|
||||
PODS_ROOT = "$(SRCROOT)";
|
||||
@@ -666,6 +650,39 @@
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
E8FED79C21E442D18BF0E54CE1FB8E7E /* Release */ = {
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = F1EEA5C4B78F1D741C77D94C79C3DCB8 /* ScalingCarousel.xcconfig */;
|
||||
buildSettings = {
|
||||
CODE_SIGN_IDENTITY = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=appletvos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "";
|
||||
"CODE_SIGN_IDENTITY[sdk=watchos*]" = "";
|
||||
CURRENT_PROJECT_VERSION = 1;
|
||||
DEFINES_MODULE = YES;
|
||||
DYLIB_COMPATIBILITY_VERSION = 1;
|
||||
DYLIB_CURRENT_VERSION = 1;
|
||||
DYLIB_INSTALL_NAME_BASE = "@rpath";
|
||||
GCC_PREFIX_HEADER = "Target Support Files/ScalingCarousel/ScalingCarousel-prefix.pch";
|
||||
INFOPLIST_FILE = "Target Support Files/ScalingCarousel/Info.plist";
|
||||
INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks";
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
MODULEMAP_FILE = "Target Support Files/ScalingCarousel/ScalingCarousel.modulemap";
|
||||
PRODUCT_NAME = ScalingCarousel;
|
||||
SDKROOT = iphoneos;
|
||||
SKIP_INSTALL = YES;
|
||||
SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) ";
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
|
||||
SWIFT_VERSION = 4.0;
|
||||
TARGETED_DEVICE_FAMILY = "1,2";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
VERSIONING_SYSTEM = "apple-generic";
|
||||
VERSION_INFO_PREFIX = "";
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
/* End XCBuildConfiguration section */
|
||||
@@ -674,8 +691,8 @@
|
||||
2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
9E1E4E48AF2EAB23169E611BF694090A /* Debug */,
|
||||
8DED8AD26D381A6ACFF202E5217EC498 /* Release */,
|
||||
B57951D085A1B98A97F8A1062A5E5C5B /* Debug */,
|
||||
6F9224530522DD3C735EC96CF142642E /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
@@ -683,8 +700,8 @@
|
||||
85B356964259A7C0CC32DCFD6CF1BE9F /* Build configuration list for PBXNativeTarget "Pods-ScalingCarousel_Example" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
AFDD8F9077316B4F5933239D791C84C9 /* Debug */,
|
||||
4567549E773691F389CC7A4BB3F30F20 /* Release */,
|
||||
BE5DA8288B9C30557A65503795355E54 /* Debug */,
|
||||
58AE32E1CA70594875449DEA71C9947F /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
@@ -692,8 +709,8 @@
|
||||
C25C6DB25A85EEDAEB2B6B7F0C47764D /* Build configuration list for PBXNativeTarget "Pods-ScalingCarousel_Tests" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
494C5F5AC2A5AE0A5D3E13BB044F7E52 /* Debug */,
|
||||
CBD0FC1D2ADF8EF8B6CC4DCD7253FE16 /* Release */,
|
||||
DCE6D7527B48F1CB709D41D13B2050E9 /* Debug */,
|
||||
AD82CF7B85C0F8F39585250F842B53E0 /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
@@ -701,8 +718,8 @@
|
||||
D9748A2A9B62FF73FF20C1A225EC05E1 /* Build configuration list for PBXNativeTarget "ScalingCarousel" */ = {
|
||||
isa = XCConfigurationList;
|
||||
buildConfigurations = (
|
||||
B42C8177BFB100081A3C97776E71EA39 /* Debug */,
|
||||
73DC2E4656B578DCC92757CFCA8157E6 /* Release */,
|
||||
188BFDBCECD2DE06114560AC8D7C8047 /* Debug */,
|
||||
E8FED79C21E442D18BF0E54CE1FB8E7E /* Release */,
|
||||
);
|
||||
defaultConfigurationIsVisible = 0;
|
||||
defaultConfigurationName = Release;
|
||||
|
||||
@@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0930"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
buildImplicitDependencies = "YES">
|
||||
<BuildActionEntries>
|
||||
<BuildActionEntry
|
||||
buildForTesting = "YES"
|
||||
buildForRunning = "YES"
|
||||
buildForProfiling = "YES"
|
||||
buildForArchiving = "YES"
|
||||
buildForAnalyzing = "YES">
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "E9582E7E712D7CD7A32DF86E8120CBC5"
|
||||
BuildableName = "ScalingCarousel.framework"
|
||||
BlueprintName = "ScalingCarousel"
|
||||
ReferencedContainer = "container:Pods.xcodeproj">
|
||||
</BuildableReference>
|
||||
</BuildActionEntry>
|
||||
</BuildActionEntries>
|
||||
</BuildAction>
|
||||
<TestAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES">
|
||||
<Testables>
|
||||
</Testables>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</TestAction>
|
||||
<LaunchAction
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<MacroExpansion>
|
||||
<BuildableReference
|
||||
BuildableIdentifier = "primary"
|
||||
BlueprintIdentifier = "E9582E7E712D7CD7A32DF86E8120CBC5"
|
||||
BuildableName = "ScalingCarousel.framework"
|
||||
BlueprintName = "ScalingCarousel"
|
||||
ReferencedContainer = "container:Pods.xcodeproj">
|
||||
</BuildableReference>
|
||||
</MacroExpansion>
|
||||
<AdditionalOptions>
|
||||
</AdditionalOptions>
|
||||
</LaunchAction>
|
||||
<ProfileAction
|
||||
buildConfiguration = "Release"
|
||||
shouldUseLaunchSchemeArgsEnv = "YES"
|
||||
savedToolIdentifier = ""
|
||||
useCustomWorkingDirectory = "NO"
|
||||
debugDocumentVersioning = "YES">
|
||||
</ProfileAction>
|
||||
<AnalyzeAction
|
||||
buildConfiguration = "Debug">
|
||||
</AnalyzeAction>
|
||||
<ArchiveAction
|
||||
buildConfiguration = "Release"
|
||||
revealArchiveInOrganizer = "YES">
|
||||
</ArchiveAction>
|
||||
</Scheme>
|
||||
+29
-8
@@ -6,6 +6,10 @@ mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
|
||||
SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}"
|
||||
|
||||
# This protects against multiple targets copying the same framework dependency at the same time. The solution
|
||||
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
|
||||
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
|
||||
|
||||
install_framework()
|
||||
{
|
||||
if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then
|
||||
@@ -23,9 +27,9 @@ install_framework()
|
||||
source="$(readlink "${source}")"
|
||||
fi
|
||||
|
||||
# use filter instead of exclude so missing patterns dont' throw errors
|
||||
echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\""
|
||||
rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
|
||||
# Use filter instead of exclude so missing patterns don't throw errors.
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
|
||||
|
||||
local basename
|
||||
basename="$(basename -s .framework "$1")"
|
||||
@@ -54,13 +58,27 @@ install_framework()
|
||||
fi
|
||||
}
|
||||
|
||||
# Copies the dSYM of a vendored framework
|
||||
install_dsym() {
|
||||
local source="$1"
|
||||
if [ -r "$source" ]; then
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DWARF_DSYM_FOLDER_PATH}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DWARF_DSYM_FOLDER_PATH}"
|
||||
fi
|
||||
}
|
||||
|
||||
# Signs a framework with the provided identity
|
||||
code_sign_if_enabled() {
|
||||
if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
|
||||
# Use the current code_sign_identitiy
|
||||
echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
|
||||
echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements \"$1\""
|
||||
/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements "$1"
|
||||
local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements '$1'"
|
||||
|
||||
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||
code_sign_cmd="$code_sign_cmd &"
|
||||
fi
|
||||
echo "$code_sign_cmd"
|
||||
eval "$code_sign_cmd"
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -71,7 +89,7 @@ strip_invalid_archs() {
|
||||
archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)"
|
||||
stripped=""
|
||||
for arch in $archs; do
|
||||
if ! [[ "${VALID_ARCHS}" == *"$arch"* ]]; then
|
||||
if ! [[ "${ARCHS}" == *"$arch"* ]]; then
|
||||
# Strip non-valid architectures in-place
|
||||
lipo -remove "$arch" -output "$binary" "$binary" || exit 1
|
||||
stripped="$stripped $arch"
|
||||
@@ -84,8 +102,11 @@ strip_invalid_archs() {
|
||||
|
||||
|
||||
if [[ "$CONFIGURATION" == "Debug" ]]; then
|
||||
install_framework "$BUILT_PRODUCTS_DIR/ScalingCarousel/ScalingCarousel.framework"
|
||||
install_framework "${BUILT_PRODUCTS_DIR}/ScalingCarousel/ScalingCarousel.framework"
|
||||
fi
|
||||
if [[ "$CONFIGURATION" == "Release" ]]; then
|
||||
install_framework "$BUILT_PRODUCTS_DIR/ScalingCarousel/ScalingCarousel.framework"
|
||||
install_framework "${BUILT_PRODUCTS_DIR}/ScalingCarousel/ScalingCarousel.framework"
|
||||
fi
|
||||
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||
wait
|
||||
fi
|
||||
|
||||
+19
-9
@@ -8,6 +8,10 @@ RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt
|
||||
|
||||
XCASSET_FILES=()
|
||||
|
||||
# This protects against multiple targets copying the same framework dependency at the same time. The solution
|
||||
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
|
||||
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
|
||||
|
||||
case "${TARGETED_DEVICE_FAMILY}" in
|
||||
1,2)
|
||||
TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone"
|
||||
@@ -18,6 +22,12 @@ case "${TARGETED_DEVICE_FAMILY}" in
|
||||
2)
|
||||
TARGET_DEVICE_ARGS="--target-device ipad"
|
||||
;;
|
||||
3)
|
||||
TARGET_DEVICE_ARGS="--target-device tv"
|
||||
;;
|
||||
4)
|
||||
TARGET_DEVICE_ARGS="--target-device watch"
|
||||
;;
|
||||
*)
|
||||
TARGET_DEVICE_ARGS="--target-device mac"
|
||||
;;
|
||||
@@ -38,29 +48,29 @@ EOM
|
||||
fi
|
||||
case $RESOURCE_PATH in
|
||||
*.storyboard)
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}"
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true
|
||||
ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS}
|
||||
;;
|
||||
*.xib)
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}"
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true
|
||||
ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS}
|
||||
;;
|
||||
*.framework)
|
||||
echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true
|
||||
mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
rsync -av "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
;;
|
||||
*.xcdatamodel)
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\""
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true
|
||||
xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom"
|
||||
;;
|
||||
*.xcdatamodeld)
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\""
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true
|
||||
xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd"
|
||||
;;
|
||||
*.xcmappingmodel)
|
||||
echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\""
|
||||
echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true
|
||||
xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm"
|
||||
;;
|
||||
*.xcassets)
|
||||
@@ -68,7 +78,7 @@ EOM
|
||||
XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE")
|
||||
;;
|
||||
*)
|
||||
echo "$RESOURCE_PATH"
|
||||
echo "$RESOURCE_PATH" || true
|
||||
echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY"
|
||||
;;
|
||||
esac
|
||||
|
||||
+8
@@ -1,5 +1,13 @@
|
||||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||
EMBEDDED_CONTENT_CONTAINS_SWIFT = YES
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/ScalingCarousel"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
@@ -8,4 +7,5 @@ OTHER_LDFLAGS = $(inherited) -framework "ScalingCarousel"
|
||||
OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
|
||||
PODS_BUILD_DIR = $BUILD_DIR
|
||||
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
PODS_ROOT = ${SRCROOT}/Pods
|
||||
|
||||
+1
-1
@@ -1,5 +1,4 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES
|
||||
EMBEDDED_CONTENT_CONTAINS_SWIFT = YES
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/ScalingCarousel"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
@@ -8,4 +7,5 @@ OTHER_LDFLAGS = $(inherited) -framework "ScalingCarousel"
|
||||
OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
|
||||
PODS_BUILD_DIR = $BUILD_DIR
|
||||
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
PODS_ROOT = ${SRCROOT}/Pods
|
||||
|
||||
+27
-6
@@ -6,6 +6,10 @@ mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
|
||||
SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}"
|
||||
|
||||
# This protects against multiple targets copying the same framework dependency at the same time. The solution
|
||||
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
|
||||
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
|
||||
|
||||
install_framework()
|
||||
{
|
||||
if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then
|
||||
@@ -23,9 +27,9 @@ install_framework()
|
||||
source="$(readlink "${source}")"
|
||||
fi
|
||||
|
||||
# use filter instead of exclude so missing patterns dont' throw errors
|
||||
echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\""
|
||||
rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
|
||||
# Use filter instead of exclude so missing patterns don't throw errors.
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}"
|
||||
|
||||
local basename
|
||||
basename="$(basename -s .framework "$1")"
|
||||
@@ -54,13 +58,27 @@ install_framework()
|
||||
fi
|
||||
}
|
||||
|
||||
# Copies the dSYM of a vendored framework
|
||||
install_dsym() {
|
||||
local source="$1"
|
||||
if [ -r "$source" ]; then
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${DWARF_DSYM_FOLDER_PATH}\""
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${DWARF_DSYM_FOLDER_PATH}"
|
||||
fi
|
||||
}
|
||||
|
||||
# Signs a framework with the provided identity
|
||||
code_sign_if_enabled() {
|
||||
if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then
|
||||
# Use the current code_sign_identitiy
|
||||
echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}"
|
||||
echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements \"$1\""
|
||||
/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements "$1"
|
||||
local code_sign_cmd="/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements '$1'"
|
||||
|
||||
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||
code_sign_cmd="$code_sign_cmd &"
|
||||
fi
|
||||
echo "$code_sign_cmd"
|
||||
eval "$code_sign_cmd"
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -71,7 +89,7 @@ strip_invalid_archs() {
|
||||
archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)"
|
||||
stripped=""
|
||||
for arch in $archs; do
|
||||
if ! [[ "${VALID_ARCHS}" == *"$arch"* ]]; then
|
||||
if ! [[ "${ARCHS}" == *"$arch"* ]]; then
|
||||
# Strip non-valid architectures in-place
|
||||
lipo -remove "$arch" -output "$binary" "$binary" || exit 1
|
||||
stripped="$stripped $arch"
|
||||
@@ -82,3 +100,6 @@ strip_invalid_archs() {
|
||||
fi
|
||||
}
|
||||
|
||||
if [ "${COCOAPODS_PARALLEL_CODE_SIGN}" == "true" ]; then
|
||||
wait
|
||||
fi
|
||||
|
||||
Example/Pods/Target Support Files/Pods-ScalingCarousel_Tests/Pods-ScalingCarousel_Tests-resources.sh
Generated
+19
-9
@@ -8,6 +8,10 @@ RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt
|
||||
|
||||
XCASSET_FILES=()
|
||||
|
||||
# This protects against multiple targets copying the same framework dependency at the same time. The solution
|
||||
# was originally proposed here: https://lists.samba.org/archive/rsync/2008-February/020158.html
|
||||
RSYNC_PROTECT_TMP_FILES=(--filter "P .*.??????")
|
||||
|
||||
case "${TARGETED_DEVICE_FAMILY}" in
|
||||
1,2)
|
||||
TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone"
|
||||
@@ -18,6 +22,12 @@ case "${TARGETED_DEVICE_FAMILY}" in
|
||||
2)
|
||||
TARGET_DEVICE_ARGS="--target-device ipad"
|
||||
;;
|
||||
3)
|
||||
TARGET_DEVICE_ARGS="--target-device tv"
|
||||
;;
|
||||
4)
|
||||
TARGET_DEVICE_ARGS="--target-device watch"
|
||||
;;
|
||||
*)
|
||||
TARGET_DEVICE_ARGS="--target-device mac"
|
||||
;;
|
||||
@@ -38,29 +48,29 @@ EOM
|
||||
fi
|
||||
case $RESOURCE_PATH in
|
||||
*.storyboard)
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}"
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true
|
||||
ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS}
|
||||
;;
|
||||
*.xib)
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}"
|
||||
echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" || true
|
||||
ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS}
|
||||
;;
|
||||
*.framework)
|
||||
echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true
|
||||
mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
rsync -av "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
echo "rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" || true
|
||||
rsync --delete -av "${RSYNC_PROTECT_TMP_FILES[@]}" "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}"
|
||||
;;
|
||||
*.xcdatamodel)
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\""
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" || true
|
||||
xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom"
|
||||
;;
|
||||
*.xcdatamodeld)
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\""
|
||||
echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" || true
|
||||
xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd"
|
||||
;;
|
||||
*.xcmappingmodel)
|
||||
echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\""
|
||||
echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" || true
|
||||
xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm"
|
||||
;;
|
||||
*.xcassets)
|
||||
@@ -68,7 +78,7 @@ EOM
|
||||
XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE")
|
||||
;;
|
||||
*)
|
||||
echo "$RESOURCE_PATH"
|
||||
echo "$RESOURCE_PATH" || true
|
||||
echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY"
|
||||
;;
|
||||
esac
|
||||
|
||||
Generated
+8
@@ -1,5 +1,13 @@
|
||||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
+1
-1
@@ -1,8 +1,8 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/ScalingCarousel"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/ScalingCarousel/ScalingCarousel.framework/Headers"
|
||||
PODS_BUILD_DIR = $BUILD_DIR
|
||||
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
PODS_ROOT = ${SRCROOT}/Pods
|
||||
|
||||
+1
-1
@@ -1,8 +1,8 @@
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = NO
|
||||
FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/ScalingCarousel"
|
||||
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1
|
||||
LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks'
|
||||
OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/ScalingCarousel/ScalingCarousel.framework/Headers"
|
||||
PODS_BUILD_DIR = $BUILD_DIR
|
||||
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_PODFILE_DIR_PATH = ${SRCROOT}/.
|
||||
PODS_ROOT = ${SRCROOT}/Pods
|
||||
|
||||
+20
-20
@@ -2,25 +2,25 @@
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>0.1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>${CURRENT_PROJECT_VERSION}</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>${EXECUTABLE_NAME}</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>${PRODUCT_BUNDLE_IDENTIFIER}</string>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
<key>CFBundleName</key>
|
||||
<string>${PRODUCT_NAME}</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>2.2</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>${CURRENT_PROJECT_VERSION}</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
@@ -1,4 +1,12 @@
|
||||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
#ifdef __OBJC__
|
||||
#import <UIKit/UIKit.h>
|
||||
#else
|
||||
#ifndef FOUNDATION_EXPORT
|
||||
#if defined(__cplusplus)
|
||||
#define FOUNDATION_EXPORT extern "C"
|
||||
#else
|
||||
#define FOUNDATION_EXPORT extern
|
||||
#endif
|
||||
#endif
|
||||
#endif
|
||||
|
||||
|
||||
|
||||
@@ -5,5 +5,6 @@ OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS"
|
||||
PODS_BUILD_DIR = $BUILD_DIR
|
||||
PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME)
|
||||
PODS_ROOT = ${SRCROOT}
|
||||
PODS_TARGET_SRCROOT = ${PODS_ROOT}/../..
|
||||
PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier}
|
||||
SKIP_INSTALL = YES
|
||||
|
||||
@@ -15,6 +15,7 @@
|
||||
607FACDD1AFB9204008FA782 /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 607FACDC1AFB9204008FA782 /* Images.xcassets */; };
|
||||
607FACE01AFB9204008FA782 /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 607FACDE1AFB9204008FA782 /* LaunchScreen.xib */; };
|
||||
607FACEC1AFB9204008FA782 /* Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 607FACEB1AFB9204008FA782 /* Tests.swift */; };
|
||||
65678AFE206FEAF900A0ED42 /* Default-568h@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = 65678AFD206FEAF900A0ED42 /* Default-568h@2x.png */; };
|
||||
65E99FA11E1519D50026BEC4 /* CodeViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 65E99FA01E1519D50026BEC4 /* CodeViewController.swift */; };
|
||||
/* End PBXBuildFile section */
|
||||
|
||||
@@ -43,6 +44,9 @@
|
||||
607FACE51AFB9204008FA782 /* ScalingCarousel_Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = ScalingCarousel_Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
607FACEA1AFB9204008FA782 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
607FACEB1AFB9204008FA782 /* Tests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Tests.swift; sourceTree = "<group>"; };
|
||||
65678AFD206FEAF900A0ED42 /* Default-568h@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "Default-568h@2x.png"; sourceTree = "<group>"; };
|
||||
659A02AC202F775500587C36 /* ScalingCarousel.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = ScalingCarousel.h; sourceTree = "<group>"; };
|
||||
659A02AD202F775500587C36 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
|
||||
65E99FA01E1519D50026BEC4 /* CodeViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CodeViewController.swift; sourceTree = "<group>"; };
|
||||
76B5BA65FCAD75DAB10B57A9 /* Pods_ScalingCarousel_Tests.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_ScalingCarousel_Tests.framework; sourceTree = BUILT_PRODUCTS_DIR; };
|
||||
B4E24FA6EB33F7731B8832FD /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = net.daringfireball.markdown; name = README.md; path = ../README.md; sourceTree = "<group>"; };
|
||||
@@ -83,9 +87,11 @@
|
||||
607FACC71AFB9204008FA782 = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
65678AFD206FEAF900A0ED42 /* Default-568h@2x.png */,
|
||||
607FACF51AFB993E008FA782 /* Podspec Metadata */,
|
||||
607FACD21AFB9204008FA782 /* Example */,
|
||||
607FACE81AFB9204008FA782 /* Tests */,
|
||||
659A02AB202F775500587C36 /* ScalingCarousel */,
|
||||
607FACD11AFB9204008FA782 /* Products */,
|
||||
AB4C669AD33FFC8D61F2C71C /* Pods */,
|
||||
3FA1F2A62E4ADD293B1EF2D3 /* Frameworks */,
|
||||
@@ -149,6 +155,15 @@
|
||||
name = "Podspec Metadata";
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
659A02AB202F775500587C36 /* ScalingCarousel */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
659A02AC202F775500587C36 /* ScalingCarousel.h */,
|
||||
659A02AD202F775500587C36 /* Info.plist */,
|
||||
);
|
||||
path = ScalingCarousel;
|
||||
sourceTree = "<group>";
|
||||
};
|
||||
65F37E001E1400640034CFF8 /* Storyboard */ = {
|
||||
isa = PBXGroup;
|
||||
children = (
|
||||
@@ -245,16 +260,18 @@
|
||||
isa = PBXProject;
|
||||
attributes = {
|
||||
LastSwiftUpdateCheck = 0720;
|
||||
LastUpgradeCheck = 0720;
|
||||
LastUpgradeCheck = 0930;
|
||||
ORGANIZATIONNAME = CocoaPods;
|
||||
TargetAttributes = {
|
||||
607FACCF1AFB9204008FA782 = {
|
||||
CreatedOnToolsVersion = 6.3.1;
|
||||
LastSwiftMigration = 0820;
|
||||
DevelopmentTeam = 49CJ89TL4W;
|
||||
LastSwiftMigration = 0900;
|
||||
};
|
||||
607FACE41AFB9204008FA782 = {
|
||||
CreatedOnToolsVersion = 6.3.1;
|
||||
LastSwiftMigration = 0820;
|
||||
DevelopmentTeam = 49CJ89TL4W;
|
||||
LastSwiftMigration = 0900;
|
||||
TestTargetID = 607FACCF1AFB9204008FA782;
|
||||
};
|
||||
};
|
||||
@@ -284,6 +301,7 @@
|
||||
buildActionMask = 2147483647;
|
||||
files = (
|
||||
607FACDB1AFB9204008FA782 /* Main.storyboard in Resources */,
|
||||
65678AFE206FEAF900A0ED42 /* Default-568h@2x.png in Resources */,
|
||||
607FACE01AFB9204008FA782 /* LaunchScreen.xib in Resources */,
|
||||
607FACDD1AFB9204008FA782 /* Images.xcassets in Resources */,
|
||||
);
|
||||
@@ -335,13 +353,16 @@
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||
"${PODS_ROOT}/Manifest.lock",
|
||||
);
|
||||
name = "[CP] Check Pods Manifest.lock";
|
||||
outputPaths = (
|
||||
"$(DERIVED_FILE_DIR)/Pods-ScalingCarousel_Tests-checkManifestLockResult.txt",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n";
|
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
BA663BC8D55C4A023C2ED9E6 /* [CP] Check Pods Manifest.lock */ = {
|
||||
@@ -350,13 +371,16 @@
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${PODS_PODFILE_DIR_PATH}/Podfile.lock",
|
||||
"${PODS_ROOT}/Manifest.lock",
|
||||
);
|
||||
name = "[CP] Check Pods Manifest.lock";
|
||||
outputPaths = (
|
||||
"$(DERIVED_FILE_DIR)/Pods-ScalingCarousel_Example-checkManifestLockResult.txt",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n";
|
||||
shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n";
|
||||
showEnvVarsInLog = 0;
|
||||
};
|
||||
C3DFC5D82C263B445B53FBDD /* [CP] Embed Pods Frameworks */ = {
|
||||
@@ -365,9 +389,12 @@
|
||||
files = (
|
||||
);
|
||||
inputPaths = (
|
||||
"${SRCROOT}/Pods/Target Support Files/Pods-ScalingCarousel_Example/Pods-ScalingCarousel_Example-frameworks.sh",
|
||||
"${BUILT_PRODUCTS_DIR}/ScalingCarousel/ScalingCarousel.framework",
|
||||
);
|
||||
name = "[CP] Embed Pods Frameworks";
|
||||
outputPaths = (
|
||||
"${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/ScalingCarousel.framework",
|
||||
);
|
||||
runOnlyForDeploymentPostprocessing = 0;
|
||||
shellPath = /bin/sh;
|
||||
@@ -448,13 +475,23 @@
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
@@ -493,13 +530,23 @@
|
||||
CLANG_CXX_LIBRARY = "libc++";
|
||||
CLANG_ENABLE_MODULES = YES;
|
||||
CLANG_ENABLE_OBJC_ARC = YES;
|
||||
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
|
||||
CLANG_WARN_BOOL_CONVERSION = YES;
|
||||
CLANG_WARN_COMMA = YES;
|
||||
CLANG_WARN_CONSTANT_CONVERSION = YES;
|
||||
CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
|
||||
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
|
||||
CLANG_WARN_EMPTY_BODY = YES;
|
||||
CLANG_WARN_ENUM_CONVERSION = YES;
|
||||
CLANG_WARN_INFINITE_RECURSION = YES;
|
||||
CLANG_WARN_INT_CONVERSION = YES;
|
||||
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
|
||||
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
|
||||
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
|
||||
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
|
||||
CLANG_WARN_STRICT_PROTOTYPES = YES;
|
||||
CLANG_WARN_SUSPICIOUS_MOVE = YES;
|
||||
CLANG_WARN_UNREACHABLE_CODE = YES;
|
||||
CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
|
||||
"CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer";
|
||||
@@ -518,6 +565,7 @@
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
MTL_ENABLE_DEBUG_INFO = NO;
|
||||
SDKROOT = iphoneos;
|
||||
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
|
||||
VALIDATE_PRODUCT = YES;
|
||||
};
|
||||
name = Release;
|
||||
@@ -526,14 +574,17 @@
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 54ACDAF6D64CCC3389CF9744 /* Pods-ScalingCarousel_Example.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
DEVELOPMENT_TEAM = 49CJ89TL4W;
|
||||
INFOPLIST_FILE = ScalingCarousel/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MODULE_NAME = ExampleApp;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 3.0;
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
|
||||
SWIFT_VERSION = 4.0;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -541,14 +592,17 @@
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = C076B0D8341FA770E7E1424B /* Pods-ScalingCarousel_Example.release.xcconfig */;
|
||||
buildSettings = {
|
||||
ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES;
|
||||
ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon;
|
||||
DEVELOPMENT_TEAM = 49CJ89TL4W;
|
||||
INFOPLIST_FILE = ScalingCarousel/Info.plist;
|
||||
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
|
||||
MODULE_NAME = ExampleApp;
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.demo.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 3.0;
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
|
||||
SWIFT_VERSION = 4.0;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
@@ -556,6 +610,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = BA63361010B0F437C40DBABF /* Pods-ScalingCarousel_Tests.debug.xcconfig */;
|
||||
buildSettings = {
|
||||
DEVELOPMENT_TEAM = 49CJ89TL4W;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
||||
"$(inherited)",
|
||||
@@ -568,7 +623,8 @@
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 3.0;
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
|
||||
SWIFT_VERSION = 4.0;
|
||||
};
|
||||
name = Debug;
|
||||
};
|
||||
@@ -576,6 +632,7 @@
|
||||
isa = XCBuildConfiguration;
|
||||
baseConfigurationReference = 2AC39C6CC3E82205FC41C768 /* Pods-ScalingCarousel_Tests.release.xcconfig */;
|
||||
buildSettings = {
|
||||
DEVELOPMENT_TEAM = 49CJ89TL4W;
|
||||
FRAMEWORK_SEARCH_PATHS = (
|
||||
"$(SDKROOT)/Developer/Library/Frameworks",
|
||||
"$(inherited)",
|
||||
@@ -584,7 +641,8 @@
|
||||
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
|
||||
PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.$(PRODUCT_NAME:rfc1034identifier)";
|
||||
PRODUCT_NAME = "$(TARGET_NAME)";
|
||||
SWIFT_VERSION = 3.0;
|
||||
SWIFT_SWIFT3_OBJC_INFERENCE = Off;
|
||||
SWIFT_VERSION = 4.0;
|
||||
};
|
||||
name = Release;
|
||||
};
|
||||
|
||||
+4
-1
@@ -1,6 +1,6 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<Scheme
|
||||
LastUpgradeVersion = "0720"
|
||||
LastUpgradeVersion = "0930"
|
||||
version = "1.3">
|
||||
<BuildAction
|
||||
parallelizeBuildables = "YES"
|
||||
@@ -69,10 +69,13 @@
|
||||
buildConfiguration = "Debug"
|
||||
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
|
||||
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
|
||||
disableMainThreadChecker = "YES"
|
||||
launchStyle = "0"
|
||||
useCustomWorkingDirectory = "NO"
|
||||
ignoresPersistentStateOnLaunch = "NO"
|
||||
debugDocumentVersioning = "YES"
|
||||
stopOnEveryThreadSanitizerIssue = "YES"
|
||||
stopOnEveryMainThreadCheckerIssue = "YES"
|
||||
debugServiceExtension = "internal"
|
||||
allowLocationSimulation = "YES">
|
||||
<BuildableProductRunnable
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>IDEDidComputeMac32BitWarning</key>
|
||||
<true/>
|
||||
</dict>
|
||||
</plist>
|
||||
@@ -13,34 +13,9 @@ class AppDelegate: UIResponder, UIApplicationDelegate {
|
||||
|
||||
var window: UIWindow?
|
||||
|
||||
|
||||
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
|
||||
// Override point for customization after application launch.
|
||||
func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey : Any]? = nil) -> Bool {
|
||||
|
||||
return true
|
||||
}
|
||||
|
||||
func applicationWillResignActive(_ application: UIApplication) {
|
||||
// Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
|
||||
// Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
|
||||
}
|
||||
|
||||
func applicationDidEnterBackground(_ application: UIApplication) {
|
||||
// Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
|
||||
// If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
|
||||
}
|
||||
|
||||
func applicationWillEnterForeground(_ application: UIApplication) {
|
||||
// Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
|
||||
}
|
||||
|
||||
func applicationDidBecomeActive(_ application: UIApplication) {
|
||||
// Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface.
|
||||
}
|
||||
|
||||
func applicationWillTerminate(_ application: UIApplication) {
|
||||
// Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -1,10 +1,12 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11762" systemVersion="16B2555" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="jed-5q-J52">
|
||||
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="14109" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="BY5-bO-M1j">
|
||||
<device id="retina4_7" orientation="portrait">
|
||||
<adaptation id="fullscreen"/>
|
||||
</device>
|
||||
<dependencies>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11757"/>
|
||||
<deployment identifier="iOS"/>
|
||||
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="14088"/>
|
||||
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
|
||||
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
|
||||
</dependencies>
|
||||
<scenes>
|
||||
@@ -12,10 +14,6 @@
|
||||
<scene sceneID="ufC-wZ-h7g">
|
||||
<objects>
|
||||
<viewController id="vXZ-lx-hvc" customClass="StoryboardViewController" customModule="ScalingCarousel_Example" customModuleProvider="target" sceneMemberID="viewController">
|
||||
<layoutGuides>
|
||||
<viewControllerLayoutGuide type="top" id="jyV-Pf-zRb"/>
|
||||
<viewControllerLayoutGuide type="bottom" id="2fi-mo-0CV"/>
|
||||
</layoutGuides>
|
||||
<view key="view" contentMode="scaleToFill" id="kh9-bI-dsS">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
|
||||
@@ -74,61 +72,69 @@
|
||||
<action selector="showHideButtonPressed:" destination="vXZ-lx-hvc" eventType="touchUpInside" id="Jsy-vc-cWp"/>
|
||||
</connections>
|
||||
</button>
|
||||
<label opaque="NO" userInteractionEnabled="NO" contentMode="left" horizontalHuggingPriority="251" verticalHuggingPriority="251" text="" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" translatesAutoresizingMaskIntoConstraints="NO" id="UYO-rO-XuZ">
|
||||
<rect key="frame" x="187" y="143" width="0.0" height="0.0"/>
|
||||
<fontDescription key="fontDescription" type="system" pointSize="17"/>
|
||||
<nil key="textColor"/>
|
||||
<nil key="highlightedColor"/>
|
||||
</label>
|
||||
</subviews>
|
||||
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
|
||||
<constraints>
|
||||
<constraint firstItem="Mq8-SH-Mx8" firstAttribute="width" secondItem="kh9-bI-dsS" secondAttribute="width" id="4Ux-ib-2uZ"/>
|
||||
<constraint firstItem="KAz-De-GJ8" firstAttribute="top" secondItem="jyV-Pf-zRb" secondAttribute="bottom" constant="85" id="Ffh-uk-Qnl"/>
|
||||
<constraint firstItem="2fi-mo-0CV" firstAttribute="top" secondItem="Mq8-SH-Mx8" secondAttribute="bottom" constant="15" id="Kee-s5-jSC"/>
|
||||
<constraint firstItem="KAz-De-GJ8" firstAttribute="centerX" secondItem="kh9-bI-dsS" secondAttribute="centerX" id="M5E-lE-5Pp"/>
|
||||
<constraint firstItem="Mq8-SH-Mx8" firstAttribute="leading" secondItem="kh9-bI-dsS" secondAttribute="leading" id="NPp-qY-rgM"/>
|
||||
<constraint firstItem="UYO-rO-XuZ" firstAttribute="centerX" secondItem="KAz-De-GJ8" secondAttribute="centerX" id="8U2-jX-Aw6"/>
|
||||
<constraint firstItem="KAz-De-GJ8" firstAttribute="top" secondItem="6xk-R0-sgg" secondAttribute="top" constant="85" id="Ffh-uk-Qnl"/>
|
||||
<constraint firstItem="6xk-R0-sgg" firstAttribute="bottom" secondItem="Mq8-SH-Mx8" secondAttribute="bottom" constant="15" id="Kee-s5-jSC"/>
|
||||
<constraint firstItem="KAz-De-GJ8" firstAttribute="centerX" secondItem="6xk-R0-sgg" secondAttribute="centerX" id="M5E-lE-5Pp"/>
|
||||
<constraint firstItem="Mq8-SH-Mx8" firstAttribute="leading" secondItem="6xk-R0-sgg" secondAttribute="leading" id="NPp-qY-rgM"/>
|
||||
<constraint firstItem="UYO-rO-XuZ" firstAttribute="top" secondItem="KAz-De-GJ8" secondAttribute="bottom" constant="8" id="nfn-SZ-h6K"/>
|
||||
</constraints>
|
||||
<viewLayoutGuide key="safeArea" id="6xk-R0-sgg"/>
|
||||
</view>
|
||||
<tabBarItem key="tabBarItem" title="Storyboard" id="7Ol-Hv-b1V"/>
|
||||
<connections>
|
||||
<outlet property="carousel" destination="Mq8-SH-Mx8" id="PYK-cv-2wb"/>
|
||||
<outlet property="carouselBottomConstraint" destination="Kee-s5-jSC" id="HnZ-jP-gpN"/>
|
||||
<outlet property="output" destination="UYO-rO-XuZ" id="v8Z-xt-lyT"/>
|
||||
</connections>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="x5A-6p-PRh" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="-332" y="-851"/>
|
||||
<point key="canvasLocation" x="-1122" y="-1047"/>
|
||||
</scene>
|
||||
<!--Tab Bar Controller-->
|
||||
<scene sceneID="eqA-eL-972">
|
||||
<objects>
|
||||
<tabBarController id="BY5-bO-M1j" sceneMemberID="viewController">
|
||||
<tabBar key="tabBar" contentMode="scaleToFill" insetsLayoutMarginsFromSafeArea="NO" id="9bU-a6-6gx">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="49"/>
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="custom" customColorSpace="genericGamma22GrayColorSpace"/>
|
||||
</tabBar>
|
||||
<connections>
|
||||
<segue destination="vXZ-lx-hvc" kind="relationship" relationship="viewControllers" id="V6k-Nc-Rnj"/>
|
||||
<segue destination="GQ1-V2-c06" kind="relationship" relationship="viewControllers" id="4Qb-nt-Ms8"/>
|
||||
</connections>
|
||||
</tabBarController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="5u5-Rc-3uB" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="-2116" y="-646"/>
|
||||
</scene>
|
||||
<!--Code-->
|
||||
<scene sceneID="xPD-nt-BgT">
|
||||
<objects>
|
||||
<viewController id="GQ1-V2-c06" customClass="CodeViewController" customModule="ScalingCarousel_Example" customModuleProvider="target" sceneMemberID="viewController">
|
||||
<layoutGuides>
|
||||
<viewControllerLayoutGuide type="top" id="5AE-Qq-kPx"/>
|
||||
<viewControllerLayoutGuide type="bottom" id="9A3-dh-CXO"/>
|
||||
</layoutGuides>
|
||||
<view key="view" contentMode="scaleToFill" id="eKu-Eq-cui">
|
||||
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
|
||||
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
|
||||
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
|
||||
<viewLayoutGuide key="safeArea" id="vm8-mu-b8r"/>
|
||||
</view>
|
||||
<tabBarItem key="tabBarItem" title="Code" id="kLX-so-YYg"/>
|
||||
</viewController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="Cgm-DY-ogT" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="-332" y="-40"/>
|
||||
</scene>
|
||||
<!--Tab Bar Controller-->
|
||||
<scene sceneID="t1i-tV-bQ3">
|
||||
<objects>
|
||||
<tabBarController automaticallyAdjustsScrollViewInsets="NO" id="jed-5q-J52" sceneMemberID="viewController">
|
||||
<toolbarItems/>
|
||||
<tabBar key="tabBar" contentMode="scaleToFill" id="Xg8-GK-uv2">
|
||||
<autoresizingMask key="autoresizingMask"/>
|
||||
<color key="backgroundColor" white="0.0" alpha="0.0" colorSpace="calibratedWhite"/>
|
||||
</tabBar>
|
||||
<connections>
|
||||
<segue destination="vXZ-lx-hvc" kind="relationship" relationship="viewControllers" id="eFb-K1-qYg"/>
|
||||
<segue destination="GQ1-V2-c06" kind="relationship" relationship="viewControllers" id="fz0-ik-wQS"/>
|
||||
</connections>
|
||||
</tabBarController>
|
||||
<placeholder placeholderIdentifier="IBFirstResponder" id="iNH-e4-Uuq" userLabel="First Responder" sceneMemberID="firstResponder"/>
|
||||
</objects>
|
||||
<point key="canvasLocation" x="-1431" y="-467"/>
|
||||
<point key="canvasLocation" x="-1122" y="-309"/>
|
||||
</scene>
|
||||
</scenes>
|
||||
</document>
|
||||
|
||||
@@ -24,6 +24,9 @@ class CodeCell: ScalingCarouselCell {
|
||||
}
|
||||
|
||||
class CodeViewController: UIViewController {
|
||||
|
||||
// MARK: - Properties (Private)
|
||||
fileprivate var scalingCarousel: ScalingCarouselView!
|
||||
|
||||
// MARK: - Lifecycle
|
||||
|
||||
@@ -43,8 +46,9 @@ class CodeViewController: UIViewController {
|
||||
private func addCarousel() {
|
||||
|
||||
let frame = CGRect(x: 0, y: 0, width: 0, height: 0)
|
||||
let scalingCarousel = ScalingCarouselView(withFrame: frame, andInset: 20)
|
||||
scalingCarousel = ScalingCarouselView(withFrame: frame, andInset: 20)
|
||||
scalingCarousel.dataSource = self
|
||||
scalingCarousel.delegate = self
|
||||
scalingCarousel.translatesAutoresizingMaskIntoConstraints = false
|
||||
scalingCarousel.backgroundColor = .white
|
||||
|
||||
@@ -76,3 +80,10 @@ extension CodeViewController: UICollectionViewDataSource {
|
||||
return cell
|
||||
}
|
||||
}
|
||||
|
||||
extension CodeViewController: UICollectionViewDelegate {
|
||||
|
||||
func scrollViewDidScroll(_ scrollView: UIScrollView) {
|
||||
//scalingCarousel.didScroll()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
<plist version="1.0">
|
||||
<dict>
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>en</string>
|
||||
<string>$(DEVELOPMENT_LANGUAGE)</string>
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>$(EXECUTABLE_NAME)</string>
|
||||
<key>CFBundleIdentifier</key>
|
||||
@@ -13,27 +13,18 @@
|
||||
<key>CFBundleName</key>
|
||||
<string>$(PRODUCT_NAME)</string>
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
<string>FMWK</string>
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>1.0</string>
|
||||
<key>CFBundleSignature</key>
|
||||
<string>????</string>
|
||||
<string>2.2</string>
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1</string>
|
||||
<key>LSRequiresIPhoneOS</key>
|
||||
<true/>
|
||||
<key>UILaunchStoryboardName</key>
|
||||
<string>LaunchScreen</string>
|
||||
<string>$(CURRENT_PROJECT_VERSION)</string>
|
||||
<key>NSPrincipalClass</key>
|
||||
<string></string>
|
||||
<key>UIMainStoryboardFile</key>
|
||||
<string>Main</string>
|
||||
<key>UIRequiredDeviceCapabilities</key>
|
||||
<array>
|
||||
<string>armv7</string>
|
||||
</array>
|
||||
<key>UISupportedInterfaceOrientations</key>
|
||||
<array>
|
||||
<string>UIInterfaceOrientationPortrait</string>
|
||||
<string>UIInterfaceOrientationLandscapeLeft</string>
|
||||
</array>
|
||||
</dict>
|
||||
</plist>
|
||||
|
||||
@@ -0,0 +1,19 @@
|
||||
//
|
||||
// ScalingCarousel.h
|
||||
// ScalingCarousel
|
||||
//
|
||||
// Created by Pete Smith on 10/02/2018.
|
||||
// Copyright © 2018 CocoaPods. All rights reserved.
|
||||
//
|
||||
|
||||
#import <UIKit/UIKit.h>
|
||||
|
||||
//! Project version number for ScalingCarousel.
|
||||
FOUNDATION_EXPORT double ScalingCarouselVersionNumber;
|
||||
|
||||
//! Project version string for ScalingCarousel.
|
||||
FOUNDATION_EXPORT const unsigned char ScalingCarouselVersionString[];
|
||||
|
||||
// In this header, you should import all the public headers of your framework using statements like #import <ScalingCarousel/PublicHeader.h>
|
||||
|
||||
|
||||
@@ -18,6 +18,7 @@ class StoryboardViewController: UIViewController {
|
||||
// MARK: - IBOutlets
|
||||
@IBOutlet weak var carousel: ScalingCarouselView!
|
||||
@IBOutlet weak var carouselBottomConstraint: NSLayoutConstraint!
|
||||
@IBOutlet weak var output: UILabel!
|
||||
|
||||
private struct Constants {
|
||||
static let carouselHideConstant: CGFloat = -250
|
||||
@@ -59,3 +60,29 @@ extension CarouselDatasource: UICollectionViewDataSource {
|
||||
return cell
|
||||
}
|
||||
}
|
||||
|
||||
typealias CarouselDelegate = StoryboardViewController
|
||||
extension StoryboardViewController: UICollectionViewDelegate {
|
||||
|
||||
func scrollViewDidScroll(_ scrollView: UIScrollView) {
|
||||
//carousel.didScroll()
|
||||
|
||||
guard let currentCenterIndex = carousel.currentCenterCellIndex?.row else { return }
|
||||
|
||||
output.text = String(describing: currentCenterIndex)
|
||||
}
|
||||
}
|
||||
|
||||
private typealias ScalingCarouselFlowDelegate = StoryboardViewController
|
||||
extension ScalingCarouselFlowDelegate: UICollectionViewDelegateFlowLayout {
|
||||
|
||||
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
|
||||
|
||||
return 0
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
# ScalingCarousel
|
||||
|
||||
[](https://travis-ci.org/Pete Smith/ScalingCarousel)
|
||||
[](https://travis-ci.org/superpeteblaze/ScalingCarousel)
|
||||
[](http://cocoapods.org/pods/ScalingCarousel)
|
||||
[](http://cocoapods.org/pods/ScalingCarousel)
|
||||
[](http://cocoapods.org/pods/ScalingCarousel)
|
||||
[](https://github.com/Carthage/Carthage)
|
||||
|
||||
ScalingCarousel provides a simple carousel-style collection view.
|
||||
It takes care of cell presentation, scaling each cell as the collection view is scrolled.
|
||||
@@ -24,11 +25,20 @@ ScalingCarousel can be added via both storyboard/xib and code, as described belo
|
||||
|
||||
* Set your UIViewController as the collection view datasource and implement the standard UICollectionViewDatasource methods in your view controller
|
||||
|
||||
* Set your UIViewController as the collection view delegate and implement the UIScrollViewDelegate method scrollViewDidScroll(:). In this method, call the didScroll() method of ScalingCarouselView
|
||||
|
||||
* Create a custom UICollectionViewCell which inherits from ScalingCarouselCell, and set the cell type to your custom cell type in the storyboard
|
||||
|
||||
* Add a view to the cell's content view, and connect this via the Connections Inspector (in Interface builder) to the cell's mainView IBOutlet.
|
||||
This property is declared in ScalingCarouselCell. You should add any cell content to this view.
|
||||
|
||||
* Note: To ensure correct scaling of the ScalingCarouselCell, you need to call the following code after you configure your cell with it's data (e.g in `cellForItem(at:)`):
|
||||
|
||||
```
|
||||
cell.setNeedsLayout()
|
||||
cell.layoutIfNeeded()
|
||||
```
|
||||
|
||||
### Code
|
||||
|
||||
* Create a custom UICollectionViewCell which inherits from ScalingCarouselCell. Initialize the mainView property, which is declared in ScalingCarouselCell;
|
||||
@@ -49,6 +59,7 @@ override init(frame: CGRect) {
|
||||
// Create our carousel
|
||||
let scalingCarousel = ScalingCarouselView(withFrame: frame, andInset: 20)
|
||||
scalingCarousel.dataSource = self
|
||||
scalingCarousel.delegate = self
|
||||
scalingCarousel.translatesAutoresizingMaskIntoConstraints = false
|
||||
|
||||
// Register our custom cell for dequeueing
|
||||
@@ -64,6 +75,15 @@ scalingCarousel.leadingAnchor.constraint(equalTo: view.leadingAnchor).isActive =
|
||||
scalingCarousel.topAnchor.constraint(equalTo: view.topAnchor, constant: 50).isActive = true
|
||||
```
|
||||
|
||||
* Set your UIViewController as the collection view delegate and implement the UIScrollViewDelegate method scrollViewDidScroll(:). In this method, call the didScroll() method of ScalingCarouselView
|
||||
|
||||
* Note: To ensure correct scaling of the ScalingCarouselCell, you need to call the following code after you configure your cell with it's data (e.g in `cellForItem(at:)`):
|
||||
|
||||
```
|
||||
cell.setNeedsLayout()
|
||||
cell.layoutIfNeeded()
|
||||
```
|
||||
|
||||
## Example
|
||||
|
||||
To run the example project, clone the repo, and run `pod install` from the Example directory first.
|
||||
@@ -74,13 +94,20 @@ iOS 9
|
||||
|
||||
## Installation
|
||||
|
||||
ScalingCarousel is available through [CocoaPods](http://cocoapods.org). To install
|
||||
it, simply add the following line to your Podfile:
|
||||
ScalingCarousel is available through [CocoaPods](http://cocoapods.org) and [Carthage](https://github.com/Carthage/Carthage).
|
||||
|
||||
To install via Cocoapods, add the following line to your Podfile:
|
||||
|
||||
```ruby
|
||||
pod "ScalingCarousel"
|
||||
```
|
||||
|
||||
To install via Carthage, add the following line to your Podfile:
|
||||
|
||||
```
|
||||
github "superpeteblaze/ScalingCarousel"
|
||||
```
|
||||
|
||||
## Author
|
||||
|
||||
Pete Smith, peadar81@gmail.com
|
||||
|
||||
@@ -8,7 +8,7 @@
|
||||
|
||||
Pod::Spec.new do |s|
|
||||
s.name = 'ScalingCarousel'
|
||||
s.version = '1.0.1'
|
||||
s.version = '2.2'
|
||||
s.summary = 'A super simple carousel view with scaling transitions written in Swift'
|
||||
|
||||
s.description = <<-DESC
|
||||
|
||||
@@ -20,16 +20,23 @@ import UIKit
|
||||
*/
|
||||
open class ScalingCarouselCell: UICollectionViewCell {
|
||||
|
||||
// MARK: - Properties (Public)
|
||||
|
||||
/// The minimum value to scale to, should be set between 0 and 1
|
||||
open var scaleMinimum: CGFloat = 0.9
|
||||
|
||||
/// Divisior used when calculating the scale value.
|
||||
/// Lower values cause a greater difference in scale between subsequent cells.
|
||||
open var scaleDivisor: CGFloat = 10.0
|
||||
|
||||
/// The minimum value to alpha to, should be set between 0 and 1
|
||||
open var alphaMinimum: CGFloat = 0.85
|
||||
|
||||
// MARK: - IBOutlets
|
||||
|
||||
// This property should be connected to the main cell subview
|
||||
@IBOutlet public var mainView: UIView!
|
||||
|
||||
private struct InternalConstants {
|
||||
static let alphaSmallestValue: CGFloat = 0.85
|
||||
static let scaleDivisor: CGFloat = 10.0
|
||||
}
|
||||
|
||||
// MARK: - Overrides
|
||||
|
||||
override open func layoutSubviews() {
|
||||
@@ -49,24 +56,37 @@ open class ScalingCarouselCell: UICollectionViewCell {
|
||||
/// Scale the cell when it is scrolled
|
||||
///
|
||||
/// - parameter carouselInset: The inset of the related SPBCarousel view
|
||||
/// - parameter scaleMinimum: The minimun % a cell should scale to,
|
||||
/// expressed as a value between 0.0 and 1.0
|
||||
open func scale(withCarouselInset carouselInset: CGFloat, scaleMinimum: CGFloat = 0.9) {
|
||||
guard let superview = superview, let mainView = mainView else { return }
|
||||
open func scale(withCarouselInset carouselInset: CGFloat) {
|
||||
|
||||
let originX = superview.convert(frame, to: nil).origin.x
|
||||
// Ensure we have a superView, and mainView
|
||||
guard let superview = superview,
|
||||
let mainView = mainView else { return }
|
||||
|
||||
// Get our absolute origin value
|
||||
let originX = superview.convert(frame, to: superview.superview).origin.x
|
||||
|
||||
// Calculate our actual origin.x value using our inset
|
||||
let originXActual = originX - carouselInset
|
||||
|
||||
let width = frame.size.width
|
||||
|
||||
// Calculate our scale values
|
||||
let scaleCalculator = fabs(width - fabs(originXActual))
|
||||
let percentageScale = (scaleCalculator/width)
|
||||
|
||||
let scaleValue = scaleMinimum + (percentageScale/InternalConstants.scaleDivisor)
|
||||
let alphaValue = InternalConstants.alphaSmallestValue + (percentageScale/InternalConstants.scaleDivisor)
|
||||
let scaleValue = scaleMinimum
|
||||
+ (percentageScale/scaleDivisor)
|
||||
|
||||
mainView.transform = CGAffineTransform.identity.scaledBy(x: scaleValue, y: scaleValue)
|
||||
let alphaValue = alphaMinimum
|
||||
+ (percentageScale/scaleDivisor)
|
||||
|
||||
let affineIdentity = CGAffineTransform.identity
|
||||
|
||||
// Scale our mainView and set it's alpha value
|
||||
mainView.transform = affineIdentity.scaledBy(x: scaleValue, y: scaleValue)
|
||||
mainView.alpha = alphaValue
|
||||
|
||||
// ..also..round the corners
|
||||
mainView.layer.cornerRadius = 20
|
||||
}
|
||||
}
|
||||
|
||||
@@ -30,11 +30,14 @@ open class ScalingCarouselLayout: UICollectionViewFlowLayout {
|
||||
}
|
||||
|
||||
override open func prepare() {
|
||||
|
||||
guard let collectionViewSize = collectionView?.frame.size else { return }
|
||||
|
||||
// Set itemSize based on total width and inset
|
||||
itemSize = collectionViewSize
|
||||
itemSize.width = itemSize.width - (inset * 2)
|
||||
|
||||
// Set scrollDirection and paging
|
||||
scrollDirection = .horizontal
|
||||
collectionView?.isPagingEnabled = true
|
||||
|
||||
|
||||
@@ -19,18 +19,49 @@ open class ScalingCarouselView: UICollectionView {
|
||||
|
||||
// MARK: - Properties (Public)
|
||||
|
||||
/// Inset of the main, central cell
|
||||
/// Inset of the main, center cell
|
||||
@IBInspectable public var inset: CGFloat = 0.0 {
|
||||
didSet {
|
||||
collectionViewLayout = ScalingCarouselLayout(withCarouselInset: inset)
|
||||
/*
|
||||
Configure our layout, and add more
|
||||
constraints to our invisible UIScrollView
|
||||
*/
|
||||
configureLayout()
|
||||
}
|
||||
}
|
||||
|
||||
/// Returns the current center cell of the carousel if it can be calculated
|
||||
open var currentCenterCell: UICollectionViewCell? {
|
||||
|
||||
let lowerBound = inset - 20
|
||||
let upperBound = inset + 20
|
||||
|
||||
for cell in visibleCells {
|
||||
|
||||
let cellRect = convert(cell.frame, to: nil)
|
||||
|
||||
if cellRect.origin.x > lowerBound && cellRect.origin.x < upperBound {
|
||||
return cell
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
return nil
|
||||
}
|
||||
|
||||
/// Returns the IndexPath of the current center cell if it can be calculated
|
||||
open var currentCenterCellIndex: IndexPath? {
|
||||
guard let currentCenterCell = self.currentCenterCell else { return nil }
|
||||
|
||||
return indexPath(for: currentCenterCell)
|
||||
}
|
||||
|
||||
/// Override of the collection view content size to add an observer
|
||||
override open var contentSize: CGSize {
|
||||
didSet {
|
||||
|
||||
guard let dataSource = dataSource else { return }
|
||||
guard let dataSource = dataSource,
|
||||
let invisibleScrollView = invisibleScrollView else { return }
|
||||
|
||||
let numberSections = dataSource.numberOfSections?(in: self) ?? 1
|
||||
|
||||
@@ -51,17 +82,17 @@ open class ScalingCarouselView: UICollectionView {
|
||||
|
||||
// MARK: - Properties (Private)
|
||||
fileprivate var invisibleScrollView: UIScrollView!
|
||||
fileprivate var invisibleWidthConstraint: NSLayoutConstraint?
|
||||
fileprivate var invisibleLeftConstraint: NSLayoutConstraint?
|
||||
|
||||
// MARK: - Lifecycle
|
||||
|
||||
override public init(frame: CGRect, collectionViewLayout layout: UICollectionViewLayout) {
|
||||
super.init(frame: frame, collectionViewLayout: layout)
|
||||
configure()
|
||||
}
|
||||
|
||||
required public init?(coder aDecoder: NSCoder) {
|
||||
super.init(coder: aDecoder)
|
||||
configure()
|
||||
}
|
||||
|
||||
/// Convenience initializer allowing setting of the carousel inset
|
||||
@@ -77,16 +108,6 @@ open class ScalingCarouselView: UICollectionView {
|
||||
|
||||
// MARK: - Overrides
|
||||
|
||||
override open func updateConstraints() {
|
||||
|
||||
invisibleScrollView.heightAnchor.constraint(equalTo: heightAnchor).isActive = true
|
||||
invisibleScrollView.widthAnchor.constraint(equalTo: widthAnchor, constant: -(2 * inset)).isActive = true
|
||||
invisibleScrollView.leftAnchor.constraint(equalTo: leftAnchor, constant: inset).isActive = true
|
||||
invisibleScrollView.topAnchor.constraint(equalTo: topAnchor).isActive = true
|
||||
|
||||
super.updateConstraints()
|
||||
}
|
||||
|
||||
override open func scrollRectToVisible(_ rect: CGRect, animated: Bool) {
|
||||
invisibleScrollView.setContentOffset(rect.origin, animated: animated)
|
||||
}
|
||||
@@ -99,27 +120,104 @@ open class ScalingCarouselView: UICollectionView {
|
||||
scrollRectToVisible(rect, animated: animated)
|
||||
}
|
||||
|
||||
// MARK: - Configuration
|
||||
|
||||
private func configure() {
|
||||
override open func didMoveToSuperview() {
|
||||
super.didMoveToSuperview()
|
||||
|
||||
// Add our invisible scrollview
|
||||
invisibleScrollView = UIScrollView(frame: self.bounds)
|
||||
addInvisibleScrollView(to: superview)
|
||||
}
|
||||
|
||||
// MARK: - Public API
|
||||
|
||||
/*
|
||||
This method should ALWAYS be called from the ScalingCarousel delegate when
|
||||
the UIScrollViewDelegate scrollViewDidScroll(_:) method is called
|
||||
|
||||
e.g In the ScalingCarousel delegate, implement:
|
||||
|
||||
func scrollViewDidScroll(_ scrollView: UIScrollView) {
|
||||
carousel.didScroll()
|
||||
}
|
||||
*/
|
||||
public func didScroll() {
|
||||
scrollViewDidScroll(self)
|
||||
}
|
||||
}
|
||||
|
||||
private typealias PrivateAPI = ScalingCarouselView
|
||||
fileprivate extension PrivateAPI {
|
||||
|
||||
fileprivate func addInvisibleScrollView(to superview: UIView?) {
|
||||
guard let superview = superview else { return }
|
||||
|
||||
/// Add our 'invisible' scrollview
|
||||
invisibleScrollView = UIScrollView(frame: bounds)
|
||||
invisibleScrollView.translatesAutoresizingMaskIntoConstraints = false
|
||||
invisibleScrollView.isPagingEnabled = true
|
||||
invisibleScrollView.showsHorizontalScrollIndicator = false
|
||||
|
||||
|
||||
print("Frame size: \(frame.size)")
|
||||
invisibleScrollView.contentSize = frame.size
|
||||
|
||||
// Turn off interaction on the overlay so touch events fall through to the main scroll view
|
||||
/*
|
||||
Disable user interaction on the 'invisible' scrollview,
|
||||
This means touch events will fall through to the underlying UICollectionView
|
||||
*/
|
||||
invisibleScrollView.isUserInteractionEnabled = false
|
||||
|
||||
/// Set the scroll delegate to be the ScalingCarouselView
|
||||
invisibleScrollView.delegate = self
|
||||
|
||||
// Add the disabled invisible scrollviews pan gesture recognizer to our collection view
|
||||
/*
|
||||
Now add the invisible scrollview's pan
|
||||
gesture recognizer to the ScalingCarouselView
|
||||
*/
|
||||
addGestureRecognizer(invisibleScrollView.panGestureRecognizer)
|
||||
addSubview(invisibleScrollView)
|
||||
|
||||
/*
|
||||
Finally, add the 'invisible' scrollview as a subview
|
||||
of the ScalingCarousel's superview
|
||||
*/
|
||||
superview.addSubview(invisibleScrollView)
|
||||
|
||||
/*
|
||||
Add constraints for height and top, relative to the
|
||||
ScalingCarouselView
|
||||
*/
|
||||
invisibleScrollView.heightAnchor.constraint(equalTo: heightAnchor).isActive = true
|
||||
invisibleScrollView.topAnchor.constraint(equalTo: topAnchor).isActive = true
|
||||
|
||||
/*
|
||||
Further configure our layout and add more constraints
|
||||
for width and left position
|
||||
*/
|
||||
configureLayout()
|
||||
}
|
||||
|
||||
fileprivate func configureLayout() {
|
||||
|
||||
// Create a ScalingCarouselLayout using our inset
|
||||
collectionViewLayout = ScalingCarouselLayout(
|
||||
withCarouselInset: inset)
|
||||
|
||||
/*
|
||||
Only continue if we have a reference to
|
||||
our 'invisible' UIScrollView
|
||||
*/
|
||||
guard let invisibleScrollView = invisibleScrollView else { return }
|
||||
|
||||
// Remove constraints if they already exist
|
||||
invisibleWidthConstraint?.isActive = false
|
||||
invisibleLeftConstraint?.isActive = false
|
||||
|
||||
/*
|
||||
Add constrants for width and left postion
|
||||
to our 'invisible' UIScrollView
|
||||
*/
|
||||
invisibleWidthConstraint = invisibleScrollView.widthAnchor.constraint(
|
||||
equalTo: widthAnchor, constant: -(2 * inset))
|
||||
invisibleLeftConstraint = invisibleScrollView.leftAnchor.constraint(
|
||||
equalTo: leftAnchor, constant: inset)
|
||||
|
||||
// Activate the constraints
|
||||
invisibleWidthConstraint?.isActive = true
|
||||
invisibleLeftConstraint?.isActive = true
|
||||
}
|
||||
}
|
||||
|
||||
@@ -131,12 +229,13 @@ extension InvisibleScrollDelegate: UIScrollViewDelegate {
|
||||
|
||||
public func scrollViewDidScroll(_ scrollView: UIScrollView) {
|
||||
|
||||
delegate?.scrollViewDidScroll?(scrollView)
|
||||
|
||||
// Only move the collection view by an amount based on the invisible scrollview
|
||||
/*
|
||||
Move the ScalingCarousel base d on the
|
||||
contentOffset of the 'invisible' UIScrollView
|
||||
*/
|
||||
updateOffSet()
|
||||
|
||||
// Scale Visible cells
|
||||
// Also, this is where we scale our cells
|
||||
for cell in visibleCells {
|
||||
if let infoCardCell = cell as? ScalingCarouselCell {
|
||||
infoCardCell.scale(withCarouselInset: inset)
|
||||
|
||||
Reference in New Issue
Block a user