├── .gitignore ├── .travis.yml ├── Classes ├── MPParallaxCollectionViewCell.h ├── MPParallaxCollectionViewCell.m ├── MPParallaxLayout.h └── MPParallaxLayout.m ├── Example ├── MPParallaxCollection.xcodeproj │ ├── project.pbxproj │ ├── project.xcworkspace │ │ └── contents.xcworkspacedata │ └── xcshareddata │ │ └── xcschemes │ │ └── MPParallaxCollection.xcscheme ├── MPParallaxCollection.xcworkspace │ └── contents.xcworkspacedata ├── MPParallaxCollection │ ├── 1@2x.png │ ├── 2@2x.png │ ├── 3@2x.png │ ├── 4@2x.png │ ├── 5@2x.png │ ├── Base.lproj │ │ ├── Main_iPad.storyboard │ │ └── Main_iPhone.storyboard │ ├── Images.xcassets │ │ ├── AppIcon.appiconset │ │ │ └── Contents.json │ │ └── LaunchImage.launchimage │ │ │ └── Contents.json │ ├── MPAppDelegate.h │ ├── MPAppDelegate.m │ ├── MPParallaxCollection-Info.plist │ ├── MPParallaxCollection-Prefix.pch │ ├── MPViewController.h │ ├── MPViewController.m │ ├── en.lproj │ │ └── InfoPlist.strings │ └── main.m ├── Podfile ├── Podfile.lock ├── Pods │ ├── BuildHeaders │ │ ├── MPParallaxCollection │ │ │ ├── MPParallaxCollectionViewCell.h │ │ │ └── MPParallaxLayout.h │ │ └── MPTextReveal │ │ │ └── MPTextReavealLabel.h │ ├── Headers │ │ ├── MPParallaxCollection │ │ │ ├── MPParallaxCollectionViewCell.h │ │ │ └── MPParallaxLayout.h │ │ └── MPTextReveal │ │ │ └── MPTextReavealLabel.h │ ├── Local Podspecs │ │ └── MPParallaxCollection.podspec │ ├── MPTextReveal │ │ ├── Classes │ │ │ ├── MPTextReavealLabel.h │ │ │ └── MPTextReavealLabel.m │ │ ├── LICENSE │ │ └── README.md │ ├── Manifest.lock │ ├── Pods-MPParallaxCollection-MPParallaxCollection-Private.xcconfig │ ├── Pods-MPParallaxCollection-MPParallaxCollection-dummy.m │ ├── Pods-MPParallaxCollection-MPParallaxCollection-prefix.pch │ ├── Pods-MPParallaxCollection-MPParallaxCollection.xcconfig │ ├── Pods-MPParallaxCollection-MPTextReveal-Private.xcconfig │ ├── Pods-MPParallaxCollection-MPTextReveal-dummy.m │ ├── Pods-MPParallaxCollection-MPTextReveal-prefix.pch │ ├── Pods-MPParallaxCollection-MPTextReveal.xcconfig │ ├── Pods-MPParallaxCollection-acknowledgements.markdown │ ├── Pods-MPParallaxCollection-acknowledgements.plist │ ├── Pods-MPParallaxCollection-dummy.m │ ├── Pods-MPParallaxCollection-environment.h │ ├── Pods-MPParallaxCollection-resources.sh │ ├── Pods-MPParallaxCollection.xcconfig │ ├── Pods-Tests-Expecta-Private.xcconfig │ ├── Pods-Tests-Expecta-dummy.m │ ├── Pods-Tests-Expecta-prefix.pch │ ├── Pods-Tests-Expecta.xcconfig │ ├── Pods-Tests-MPParallaxCollection-Private.xcconfig │ ├── Pods-Tests-MPParallaxCollection-dummy.m │ ├── Pods-Tests-MPParallaxCollection-prefix.pch │ ├── Pods-Tests-MPParallaxCollection.xcconfig │ ├── Pods-Tests-Specta-Private.xcconfig │ ├── Pods-Tests-Specta-dummy.m │ ├── Pods-Tests-Specta-prefix.pch │ ├── Pods-Tests-Specta.xcconfig │ ├── Pods-Tests-acknowledgements.markdown │ ├── Pods-Tests-acknowledgements.plist │ ├── Pods-Tests-dummy.m │ ├── Pods-Tests-environment.h │ ├── Pods-Tests-resources.sh │ ├── Pods-Tests.xcconfig │ └── Pods.xcodeproj │ │ └── project.pbxproj └── Tests │ ├── Tests-Info.plist │ ├── Tests-Prefix.pch │ ├── Tests.m │ └── en.lproj │ └── InfoPlist.strings ├── LICENSE ├── MPParallaxCollection.podspec ├── README.md └── img ├── img0.png ├── img1.png └── inaction.gif /.gitignore: -------------------------------------------------------------------------------- 1 | # OS X 2 | .DS_Store 3 | 4 | # Xcode 5 | build/ 6 | *.pbxuser 7 | !default.pbxuser 8 | *.mode1v3 9 | !default.mode1v3 10 | *.mode2v3 11 | !default.mode2v3 12 | *.perspectivev3 13 | !default.perspectivev3 14 | xcuserdata 15 | *.xccheckout 16 | profile 17 | *.moved-aside 18 | DerivedData 19 | *.hmap 20 | *.ipa 21 | 22 | # Bundler 23 | .bundle 24 | 25 | # We recommend against adding the Pods directory to your .gitignore. However 26 | # you should judge for yourself, the pros and cons are mentioned at: 27 | # http://guides.cocoapods.org/using/using-cocoapods.html#should-i-ignore-the-pods-directory-in-source-control 28 | # 29 | # Pods/ 30 | -------------------------------------------------------------------------------- /.travis.yml: -------------------------------------------------------------------------------- 1 | # reference: http://www.objc.io/issue-6/travis-ci.html 2 | 3 | language: objective-c 4 | script: 5 | - xctool test -workspace Example/MPParallaxCollection.xcworkspace -scheme MPParallaxCollection -sdk iphonesimulator ONLY_ACTIVE_ARCH=NO 6 | -------------------------------------------------------------------------------- /Classes/MPParallaxCollectionViewCell.h: -------------------------------------------------------------------------------- 1 | // 2 | // MPParallaxCollectionViewCell.h 3 | // MPPercentDriven 4 | // 5 | // Created by Alex Manzella on 27/05/14. 6 | // Copyright (c) 2014 mpow. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #define MAX_HORIZONTAL_PARALLAX 150 12 | 13 | @class MPParallaxCollectionViewCell; 14 | 15 | @protocol MPParallaxCellDelegate 16 | 17 | @required 18 | 19 | - (void)cell:(MPParallaxCollectionViewCell *)cell changeParallaxValueTo:(CGFloat)value; 20 | 21 | @end 22 | 23 | @interface MPParallaxCollectionViewCell : UICollectionViewCell 24 | 25 | 26 | @property (nonatomic,readwrite) UIImage *image; 27 | @property (nonatomic,readwrite) UIImageView *imageView; 28 | @property (nonatomic,assign) CGFloat parallaxValue; // from -1 to 1 that represent the minimum form to left to maximim right 29 | @property (nonatomic,assign) iddelegate; 30 | 31 | @end 32 | -------------------------------------------------------------------------------- /Classes/MPParallaxCollectionViewCell.m: -------------------------------------------------------------------------------- 1 | // 2 | // MPParallaxCollectionViewCell.m 3 | // MPPercentDriven 4 | // 5 | // Created by Alex Manzella on 27/05/14. 6 | // Copyright (c) 2014 mpow. All rights reserved. 7 | // 8 | 9 | #import "MPParallaxCollectionViewCell.h" 10 | 11 | @implementation MPParallaxCollectionViewCell 12 | 13 | - (id)initWithFrame:(CGRect)frame 14 | { 15 | self = [super initWithFrame:frame]; 16 | if (self) { 17 | // Initialization code 18 | 19 | self.clipsToBounds=YES; 20 | self.imageView=[[UIImageView alloc] initWithFrame:CGRectInset(self.bounds, -MAX_HORIZONTAL_PARALLAX, 0)]; 21 | self.imageView.contentMode=UIViewContentModeScaleAspectFill; 22 | self.imageView.clipsToBounds=YES; 23 | self.imageView.autoresizingMask=UIViewAutoresizingFlexibleHeight | UIViewAutoresizingFlexibleWidth; 24 | [self addSubview:self.imageView]; 25 | } 26 | return self; 27 | } 28 | 29 | 30 | 31 | - (void)setParallaxValue:(CGFloat)parallaxValue{ 32 | 33 | _parallaxValue=parallaxValue; 34 | 35 | CGRect frame=self.imageView.frame; 36 | frame.origin.x=-MAX_HORIZONTAL_PARALLAX + parallaxValue*MAX_HORIZONTAL_PARALLAX; 37 | self.imageView.frame=frame; 38 | 39 | if ([[self delegate] respondsToSelector:@selector(cell:changeParallaxValueTo:)]) { 40 | [[self delegate] cell:self changeParallaxValueTo:parallaxValue]; 41 | } 42 | 43 | } 44 | 45 | 46 | - (void)dealloc{ 47 | self.delegate=nil; 48 | } 49 | 50 | 51 | 52 | 53 | 54 | - (UIImage *)image{ 55 | return self.imageView.image; 56 | } 57 | 58 | - (void)setImage:(UIImage *)image{ 59 | self.imageView.image=image; 60 | } 61 | 62 | @end 63 | -------------------------------------------------------------------------------- /Classes/MPParallaxLayout.h: -------------------------------------------------------------------------------- 1 | // 2 | // MPPallaxLayout.h 3 | // MPPercentDriven 4 | // 5 | // Created by Alex Manzella on 27/05/14. 6 | // Copyright (c) 2014 mpow. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MPParallaxLayout : UICollectionViewFlowLayout 12 | 13 | @end 14 | -------------------------------------------------------------------------------- /Classes/MPParallaxLayout.m: -------------------------------------------------------------------------------- 1 | // 2 | // MPPallaxLayout.m 3 | // MPPercentDriven 4 | // 5 | // Created by Alex Manzella on 27/05/14. 6 | // Copyright (c) 2014 mpow. All rights reserved. 7 | // 8 | 9 | #import "MPParallaxLayout.h" 10 | #import "MPParallaxCollectionViewCell.h" 11 | 12 | @implementation MPParallaxLayout 13 | 14 | - (id)init{ 15 | 16 | if (self=[super init]) { 17 | 18 | self.itemSize=[UIScreen mainScreen].bounds.size; 19 | self.minimumLineSpacing=0; 20 | self.minimumInteritemSpacing=0; 21 | self.scrollDirection=UICollectionViewScrollDirectionHorizontal; 22 | 23 | } 24 | 25 | return self; 26 | } 27 | 28 | -(NSArray *)layoutAttributesForElementsInRect:(CGRect)rect{ 29 | 30 | NSMutableArray *attributes=[[super layoutAttributesForElementsInRect:rect] mutableCopy]; 31 | 32 | [attributes enumerateObjectsUsingBlock:^(UICollectionViewLayoutAttributes* obj, NSUInteger idx, BOOL *stop) { 33 | 34 | MPParallaxCollectionViewCell *cell=(MPParallaxCollectionViewCell *)[self.collectionView cellForItemAtIndexPath:obj.indexPath]; 35 | 36 | if (cell) { 37 | 38 | CGFloat position=self.collectionView.contentOffset.x; 39 | CGFloat final=self.itemSize.width*obj.indexPath.item; 40 | 41 | CGFloat missing=final-position; 42 | 43 | CGFloat parallaxValue=missing/self.collectionView.frame.size.width; 44 | 45 | cell.parallaxValue=parallaxValue; 46 | 47 | } 48 | 49 | 50 | }]; 51 | 52 | return attributes; 53 | } 54 | 55 | - (CGSize)itemSize{ 56 | return self.collectionView.frame.size; 57 | } 58 | 59 | 60 | - (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds{ 61 | return YES; 62 | } 63 | 64 | @end 65 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | // !$*UTF8*$! 2 | { 3 | archiveVersion = 1; 4 | classes = { 5 | }; 6 | objectVersion = 46; 7 | objects = { 8 | 9 | /* Begin PBXBuildFile section */ 10 | 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 11 | 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58F195388D20070C39A /* CoreGraphics.framework */; }; 12 | 6003F592195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 13 | 6003F598195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F596195388D20070C39A /* InfoPlist.strings */; }; 14 | 6003F59A195388D20070C39A /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F599195388D20070C39A /* main.m */; }; 15 | 6003F59E195388D20070C39A /* MPAppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F59D195388D20070C39A /* MPAppDelegate.m */; }; 16 | 6003F5A1195388D20070C39A /* Main_iPhone.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6003F59F195388D20070C39A /* Main_iPhone.storyboard */; }; 17 | 6003F5A4195388D20070C39A /* Main_iPad.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5A2195388D20070C39A /* Main_iPad.storyboard */; }; 18 | 6003F5A7195388D20070C39A /* MPViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5A6195388D20070C39A /* MPViewController.m */; }; 19 | 6003F5A9195388D20070C39A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5A8195388D20070C39A /* Images.xcassets */; }; 20 | 6003F5B0195388D20070C39A /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F5AF195388D20070C39A /* XCTest.framework */; }; 21 | 6003F5B1195388D20070C39A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F58D195388D20070C39A /* Foundation.framework */; }; 22 | 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 6003F591195388D20070C39A /* UIKit.framework */; }; 23 | 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 6003F5B8195388D20070C39A /* InfoPlist.strings */; }; 24 | 6003F5BC195388D20070C39A /* Tests.m in Sources */ = {isa = PBXBuildFile; fileRef = 6003F5BB195388D20070C39A /* Tests.m */; }; 25 | 9512874E45D64283BA7A64B8 /* libPods-MPParallaxCollection.a in Frameworks */ = {isa = PBXBuildFile; fileRef = EE00D929A7CB4C57B10E2FD7 /* libPods-MPParallaxCollection.a */; }; 26 | 9CDF0DD7509949D6A7B49F90 /* libPods-Tests.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 9428FF1BA1CE476B8F572185 /* libPods-Tests.a */; }; 27 | DE533B811991381D00AD4DF4 /* 1@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DE533B7C1991381D00AD4DF4 /* 1@2x.png */; }; 28 | DE533B821991381D00AD4DF4 /* 2@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DE533B7D1991381D00AD4DF4 /* 2@2x.png */; }; 29 | DE533B831991381D00AD4DF4 /* 3@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DE533B7E1991381D00AD4DF4 /* 3@2x.png */; }; 30 | DE533B841991381D00AD4DF4 /* 4@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DE533B7F1991381D00AD4DF4 /* 4@2x.png */; }; 31 | DE533B851991381D00AD4DF4 /* 5@2x.png in Resources */ = {isa = PBXBuildFile; fileRef = DE533B801991381D00AD4DF4 /* 5@2x.png */; }; 32 | /* End PBXBuildFile section */ 33 | 34 | /* Begin PBXContainerItemProxy section */ 35 | 6003F5B3195388D20070C39A /* PBXContainerItemProxy */ = { 36 | isa = PBXContainerItemProxy; 37 | containerPortal = 6003F582195388D10070C39A /* Project object */; 38 | proxyType = 1; 39 | remoteGlobalIDString = 6003F589195388D20070C39A; 40 | remoteInfo = MPParallaxCollection; 41 | }; 42 | /* End PBXContainerItemProxy section */ 43 | 44 | /* Begin PBXFileReference section */ 45 | 3271DE5107F74A339B71462F /* MPParallaxCollection.podspec */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = MPParallaxCollection.podspec; path = ../MPParallaxCollection.podspec; sourceTree = ""; }; 46 | 6003F58A195388D20070C39A /* MPParallaxCollection.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = MPParallaxCollection.app; sourceTree = BUILT_PRODUCTS_DIR; }; 47 | 6003F58D195388D20070C39A /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = System/Library/Frameworks/Foundation.framework; sourceTree = SDKROOT; }; 48 | 6003F58F195388D20070C39A /* CoreGraphics.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CoreGraphics.framework; path = System/Library/Frameworks/CoreGraphics.framework; sourceTree = SDKROOT; }; 49 | 6003F591195388D20070C39A /* UIKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = UIKit.framework; path = System/Library/Frameworks/UIKit.framework; sourceTree = SDKROOT; }; 50 | 6003F595195388D20070C39A /* MPParallaxCollection-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "MPParallaxCollection-Info.plist"; sourceTree = ""; }; 51 | 6003F597195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 52 | 6003F599195388D20070C39A /* main.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; 53 | 6003F59B195388D20070C39A /* MPParallaxCollection-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MPParallaxCollection-Prefix.pch"; sourceTree = ""; }; 54 | 6003F59C195388D20070C39A /* MPAppDelegate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPAppDelegate.h; sourceTree = ""; }; 55 | 6003F59D195388D20070C39A /* MPAppDelegate.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MPAppDelegate.m; sourceTree = ""; }; 56 | 6003F5A0195388D20070C39A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main_iPhone.storyboard; sourceTree = ""; }; 57 | 6003F5A3195388D20070C39A /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main_iPad.storyboard; sourceTree = ""; }; 58 | 6003F5A5195388D20070C39A /* MPViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MPViewController.h; sourceTree = ""; }; 59 | 6003F5A6195388D20070C39A /* MPViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MPViewController.m; sourceTree = ""; }; 60 | 6003F5A8195388D20070C39A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; 61 | 6003F5AE195388D20070C39A /* Tests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = Tests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 62 | 6003F5AF195388D20070C39A /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; 63 | 6003F5B7195388D20070C39A /* Tests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "Tests-Info.plist"; sourceTree = ""; }; 64 | 6003F5B9195388D20070C39A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; 65 | 6003F5BB195388D20070C39A /* Tests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Tests.m; sourceTree = ""; }; 66 | 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Tests-Prefix.pch"; sourceTree = ""; }; 67 | 9428FF1BA1CE476B8F572185 /* libPods-Tests.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-Tests.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 68 | 9E25ED3C6BF2451CB981CFB0 /* LICENSE */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = LICENSE; path = ../LICENSE; sourceTree = ""; }; 69 | B4F4646E69BE4B2797861C4C /* Pods-Tests.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Tests.xcconfig"; path = "Pods/Pods-Tests.xcconfig"; sourceTree = ""; }; 70 | D8713BE7E2A8420090434D76 /* Pods-MPParallaxCollection.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-MPParallaxCollection.xcconfig"; path = "Pods/Pods-MPParallaxCollection.xcconfig"; sourceTree = ""; }; 71 | DDC423DC94D94D93A91F05BD /* README.md */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = README.md; path = ../README.md; sourceTree = ""; }; 72 | DE533B7C1991381D00AD4DF4 /* 1@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "1@2x.png"; sourceTree = ""; }; 73 | DE533B7D1991381D00AD4DF4 /* 2@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "2@2x.png"; sourceTree = ""; }; 74 | DE533B7E1991381D00AD4DF4 /* 3@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "3@2x.png"; sourceTree = ""; }; 75 | DE533B7F1991381D00AD4DF4 /* 4@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "4@2x.png"; sourceTree = ""; }; 76 | DE533B801991381D00AD4DF4 /* 5@2x.png */ = {isa = PBXFileReference; lastKnownFileType = image.png; path = "5@2x.png"; sourceTree = ""; }; 77 | EE00D929A7CB4C57B10E2FD7 /* libPods-MPParallaxCollection.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = "libPods-MPParallaxCollection.a"; sourceTree = BUILT_PRODUCTS_DIR; }; 78 | /* End PBXFileReference section */ 79 | 80 | /* Begin PBXFrameworksBuildPhase section */ 81 | 6003F587195388D20070C39A /* Frameworks */ = { 82 | isa = PBXFrameworksBuildPhase; 83 | buildActionMask = 2147483647; 84 | files = ( 85 | 6003F590195388D20070C39A /* CoreGraphics.framework in Frameworks */, 86 | 6003F592195388D20070C39A /* UIKit.framework in Frameworks */, 87 | 6003F58E195388D20070C39A /* Foundation.framework in Frameworks */, 88 | 9512874E45D64283BA7A64B8 /* libPods-MPParallaxCollection.a in Frameworks */, 89 | ); 90 | runOnlyForDeploymentPostprocessing = 0; 91 | }; 92 | 6003F5AB195388D20070C39A /* Frameworks */ = { 93 | isa = PBXFrameworksBuildPhase; 94 | buildActionMask = 2147483647; 95 | files = ( 96 | 6003F5B0195388D20070C39A /* XCTest.framework in Frameworks */, 97 | 6003F5B2195388D20070C39A /* UIKit.framework in Frameworks */, 98 | 6003F5B1195388D20070C39A /* Foundation.framework in Frameworks */, 99 | 9CDF0DD7509949D6A7B49F90 /* libPods-Tests.a in Frameworks */, 100 | ); 101 | runOnlyForDeploymentPostprocessing = 0; 102 | }; 103 | /* End PBXFrameworksBuildPhase section */ 104 | 105 | /* Begin PBXGroup section */ 106 | 6003F581195388D10070C39A = { 107 | isa = PBXGroup; 108 | children = ( 109 | 60FF7A9C1954A5C5007DD14C /* Podspec Metadata */, 110 | 6003F593195388D20070C39A /* MPParallaxCollection */, 111 | 6003F5B5195388D20070C39A /* Tests */, 112 | 6003F58C195388D20070C39A /* Frameworks */, 113 | 6003F58B195388D20070C39A /* Products */, 114 | D8713BE7E2A8420090434D76 /* Pods-MPParallaxCollection.xcconfig */, 115 | B4F4646E69BE4B2797861C4C /* Pods-Tests.xcconfig */, 116 | ); 117 | sourceTree = ""; 118 | }; 119 | 6003F58B195388D20070C39A /* Products */ = { 120 | isa = PBXGroup; 121 | children = ( 122 | 6003F58A195388D20070C39A /* MPParallaxCollection.app */, 123 | 6003F5AE195388D20070C39A /* Tests.xctest */, 124 | ); 125 | name = Products; 126 | sourceTree = ""; 127 | }; 128 | 6003F58C195388D20070C39A /* Frameworks */ = { 129 | isa = PBXGroup; 130 | children = ( 131 | 6003F58D195388D20070C39A /* Foundation.framework */, 132 | 6003F58F195388D20070C39A /* CoreGraphics.framework */, 133 | 6003F591195388D20070C39A /* UIKit.framework */, 134 | 6003F5AF195388D20070C39A /* XCTest.framework */, 135 | EE00D929A7CB4C57B10E2FD7 /* libPods-MPParallaxCollection.a */, 136 | 9428FF1BA1CE476B8F572185 /* libPods-Tests.a */, 137 | ); 138 | name = Frameworks; 139 | sourceTree = ""; 140 | }; 141 | 6003F593195388D20070C39A /* MPParallaxCollection */ = { 142 | isa = PBXGroup; 143 | children = ( 144 | 6003F59C195388D20070C39A /* MPAppDelegate.h */, 145 | 6003F59D195388D20070C39A /* MPAppDelegate.m */, 146 | 6003F59F195388D20070C39A /* Main_iPhone.storyboard */, 147 | 6003F5A2195388D20070C39A /* Main_iPad.storyboard */, 148 | 6003F5A5195388D20070C39A /* MPViewController.h */, 149 | 6003F5A6195388D20070C39A /* MPViewController.m */, 150 | 6003F5A8195388D20070C39A /* Images.xcassets */, 151 | 6003F594195388D20070C39A /* Supporting Files */, 152 | ); 153 | path = MPParallaxCollection; 154 | sourceTree = ""; 155 | }; 156 | 6003F594195388D20070C39A /* Supporting Files */ = { 157 | isa = PBXGroup; 158 | children = ( 159 | DE533B7C1991381D00AD4DF4 /* 1@2x.png */, 160 | DE533B7D1991381D00AD4DF4 /* 2@2x.png */, 161 | DE533B7E1991381D00AD4DF4 /* 3@2x.png */, 162 | DE533B7F1991381D00AD4DF4 /* 4@2x.png */, 163 | DE533B801991381D00AD4DF4 /* 5@2x.png */, 164 | 6003F595195388D20070C39A /* MPParallaxCollection-Info.plist */, 165 | 6003F596195388D20070C39A /* InfoPlist.strings */, 166 | 6003F599195388D20070C39A /* main.m */, 167 | 6003F59B195388D20070C39A /* MPParallaxCollection-Prefix.pch */, 168 | ); 169 | name = "Supporting Files"; 170 | sourceTree = ""; 171 | }; 172 | 6003F5B5195388D20070C39A /* Tests */ = { 173 | isa = PBXGroup; 174 | children = ( 175 | 6003F5BB195388D20070C39A /* Tests.m */, 176 | 6003F5B6195388D20070C39A /* Supporting Files */, 177 | ); 178 | path = Tests; 179 | sourceTree = ""; 180 | }; 181 | 6003F5B6195388D20070C39A /* Supporting Files */ = { 182 | isa = PBXGroup; 183 | children = ( 184 | 6003F5B7195388D20070C39A /* Tests-Info.plist */, 185 | 6003F5B8195388D20070C39A /* InfoPlist.strings */, 186 | 606FC2411953D9B200FFA9A0 /* Tests-Prefix.pch */, 187 | ); 188 | name = "Supporting Files"; 189 | sourceTree = ""; 190 | }; 191 | 60FF7A9C1954A5C5007DD14C /* Podspec Metadata */ = { 192 | isa = PBXGroup; 193 | children = ( 194 | 3271DE5107F74A339B71462F /* MPParallaxCollection.podspec */, 195 | DDC423DC94D94D93A91F05BD /* README.md */, 196 | 9E25ED3C6BF2451CB981CFB0 /* LICENSE */, 197 | ); 198 | name = "Podspec Metadata"; 199 | sourceTree = ""; 200 | }; 201 | /* End PBXGroup section */ 202 | 203 | /* Begin PBXNativeTarget section */ 204 | 6003F589195388D20070C39A /* MPParallaxCollection */ = { 205 | isa = PBXNativeTarget; 206 | buildConfigurationList = 6003F5BF195388D20070C39A /* Build configuration list for PBXNativeTarget "MPParallaxCollection" */; 207 | buildPhases = ( 208 | 260A883615FE4E8AB56AD7BB /* Check Pods Manifest.lock */, 209 | 6003F586195388D20070C39A /* Sources */, 210 | 6003F587195388D20070C39A /* Frameworks */, 211 | 6003F588195388D20070C39A /* Resources */, 212 | 53EF8198ED9848AC9E8908FE /* Copy Pods Resources */, 213 | ); 214 | buildRules = ( 215 | ); 216 | dependencies = ( 217 | ); 218 | name = MPParallaxCollection; 219 | productName = MPParallaxCollection; 220 | productReference = 6003F58A195388D20070C39A /* MPParallaxCollection.app */; 221 | productType = "com.apple.product-type.application"; 222 | }; 223 | 6003F5AD195388D20070C39A /* Tests */ = { 224 | isa = PBXNativeTarget; 225 | buildConfigurationList = 6003F5C2195388D20070C39A /* Build configuration list for PBXNativeTarget "Tests" */; 226 | buildPhases = ( 227 | 4EBFA578FE47466783882CBD /* Check Pods Manifest.lock */, 228 | 6003F5AA195388D20070C39A /* Sources */, 229 | 6003F5AB195388D20070C39A /* Frameworks */, 230 | 6003F5AC195388D20070C39A /* Resources */, 231 | E9A9E1BE092941A68041243D /* Copy Pods Resources */, 232 | ); 233 | buildRules = ( 234 | ); 235 | dependencies = ( 236 | 6003F5B4195388D20070C39A /* PBXTargetDependency */, 237 | ); 238 | name = Tests; 239 | productName = MPParallaxCollectionTests; 240 | productReference = 6003F5AE195388D20070C39A /* Tests.xctest */; 241 | productType = "com.apple.product-type.bundle.unit-test"; 242 | }; 243 | /* End PBXNativeTarget section */ 244 | 245 | /* Begin PBXProject section */ 246 | 6003F582195388D10070C39A /* Project object */ = { 247 | isa = PBXProject; 248 | attributes = { 249 | CLASSPREFIX = MP; 250 | LastUpgradeCheck = 0510; 251 | ORGANIZATIONNAME = "Alex Manzella"; 252 | TargetAttributes = { 253 | 6003F5AD195388D20070C39A = { 254 | TestTargetID = 6003F589195388D20070C39A; 255 | }; 256 | }; 257 | }; 258 | buildConfigurationList = 6003F585195388D10070C39A /* Build configuration list for PBXProject "MPParallaxCollection" */; 259 | compatibilityVersion = "Xcode 3.2"; 260 | developmentRegion = English; 261 | hasScannedForEncodings = 0; 262 | knownRegions = ( 263 | en, 264 | Base, 265 | ); 266 | mainGroup = 6003F581195388D10070C39A; 267 | productRefGroup = 6003F58B195388D20070C39A /* Products */; 268 | projectDirPath = ""; 269 | projectRoot = ""; 270 | targets = ( 271 | 6003F589195388D20070C39A /* MPParallaxCollection */, 272 | 6003F5AD195388D20070C39A /* Tests */, 273 | ); 274 | }; 275 | /* End PBXProject section */ 276 | 277 | /* Begin PBXResourcesBuildPhase section */ 278 | 6003F588195388D20070C39A /* Resources */ = { 279 | isa = PBXResourcesBuildPhase; 280 | buildActionMask = 2147483647; 281 | files = ( 282 | DE533B851991381D00AD4DF4 /* 5@2x.png in Resources */, 283 | 6003F5A4195388D20070C39A /* Main_iPad.storyboard in Resources */, 284 | DE533B841991381D00AD4DF4 /* 4@2x.png in Resources */, 285 | 6003F5A9195388D20070C39A /* Images.xcassets in Resources */, 286 | DE533B811991381D00AD4DF4 /* 1@2x.png in Resources */, 287 | DE533B821991381D00AD4DF4 /* 2@2x.png in Resources */, 288 | 6003F5A1195388D20070C39A /* Main_iPhone.storyboard in Resources */, 289 | DE533B831991381D00AD4DF4 /* 3@2x.png in Resources */, 290 | 6003F598195388D20070C39A /* InfoPlist.strings in Resources */, 291 | ); 292 | runOnlyForDeploymentPostprocessing = 0; 293 | }; 294 | 6003F5AC195388D20070C39A /* Resources */ = { 295 | isa = PBXResourcesBuildPhase; 296 | buildActionMask = 2147483647; 297 | files = ( 298 | 6003F5BA195388D20070C39A /* InfoPlist.strings in Resources */, 299 | ); 300 | runOnlyForDeploymentPostprocessing = 0; 301 | }; 302 | /* End PBXResourcesBuildPhase section */ 303 | 304 | /* Begin PBXShellScriptBuildPhase section */ 305 | 260A883615FE4E8AB56AD7BB /* Check Pods Manifest.lock */ = { 306 | isa = PBXShellScriptBuildPhase; 307 | buildActionMask = 2147483647; 308 | files = ( 309 | ); 310 | inputPaths = ( 311 | ); 312 | name = "Check Pods Manifest.lock"; 313 | outputPaths = ( 314 | ); 315 | runOnlyForDeploymentPostprocessing = 0; 316 | shellPath = /bin/sh; 317 | shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; 318 | showEnvVarsInLog = 0; 319 | }; 320 | 4EBFA578FE47466783882CBD /* Check Pods Manifest.lock */ = { 321 | isa = PBXShellScriptBuildPhase; 322 | buildActionMask = 2147483647; 323 | files = ( 324 | ); 325 | inputPaths = ( 326 | ); 327 | name = "Check Pods Manifest.lock"; 328 | outputPaths = ( 329 | ); 330 | runOnlyForDeploymentPostprocessing = 0; 331 | shellPath = /bin/sh; 332 | shellScript = "diff \"${PODS_ROOT}/../Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [[ $? != 0 ]] ; then\n cat << EOM\nerror: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\nEOM\n exit 1\nfi\n"; 333 | showEnvVarsInLog = 0; 334 | }; 335 | 53EF8198ED9848AC9E8908FE /* Copy Pods Resources */ = { 336 | isa = PBXShellScriptBuildPhase; 337 | buildActionMask = 2147483647; 338 | files = ( 339 | ); 340 | inputPaths = ( 341 | ); 342 | name = "Copy Pods Resources"; 343 | outputPaths = ( 344 | ); 345 | runOnlyForDeploymentPostprocessing = 0; 346 | shellPath = /bin/sh; 347 | shellScript = "\"${SRCROOT}/Pods/Pods-MPParallaxCollection-resources.sh\"\n"; 348 | showEnvVarsInLog = 0; 349 | }; 350 | E9A9E1BE092941A68041243D /* Copy Pods Resources */ = { 351 | isa = PBXShellScriptBuildPhase; 352 | buildActionMask = 2147483647; 353 | files = ( 354 | ); 355 | inputPaths = ( 356 | ); 357 | name = "Copy Pods Resources"; 358 | outputPaths = ( 359 | ); 360 | runOnlyForDeploymentPostprocessing = 0; 361 | shellPath = /bin/sh; 362 | shellScript = "\"${SRCROOT}/Pods/Pods-Tests-resources.sh\"\n"; 363 | showEnvVarsInLog = 0; 364 | }; 365 | /* End PBXShellScriptBuildPhase section */ 366 | 367 | /* Begin PBXSourcesBuildPhase section */ 368 | 6003F586195388D20070C39A /* Sources */ = { 369 | isa = PBXSourcesBuildPhase; 370 | buildActionMask = 2147483647; 371 | files = ( 372 | 6003F59E195388D20070C39A /* MPAppDelegate.m in Sources */, 373 | 6003F5A7195388D20070C39A /* MPViewController.m in Sources */, 374 | 6003F59A195388D20070C39A /* main.m in Sources */, 375 | ); 376 | runOnlyForDeploymentPostprocessing = 0; 377 | }; 378 | 6003F5AA195388D20070C39A /* Sources */ = { 379 | isa = PBXSourcesBuildPhase; 380 | buildActionMask = 2147483647; 381 | files = ( 382 | 6003F5BC195388D20070C39A /* Tests.m in Sources */, 383 | ); 384 | runOnlyForDeploymentPostprocessing = 0; 385 | }; 386 | /* End PBXSourcesBuildPhase section */ 387 | 388 | /* Begin PBXTargetDependency section */ 389 | 6003F5B4195388D20070C39A /* PBXTargetDependency */ = { 390 | isa = PBXTargetDependency; 391 | target = 6003F589195388D20070C39A /* MPParallaxCollection */; 392 | targetProxy = 6003F5B3195388D20070C39A /* PBXContainerItemProxy */; 393 | }; 394 | /* End PBXTargetDependency section */ 395 | 396 | /* Begin PBXVariantGroup section */ 397 | 6003F596195388D20070C39A /* InfoPlist.strings */ = { 398 | isa = PBXVariantGroup; 399 | children = ( 400 | 6003F597195388D20070C39A /* en */, 401 | ); 402 | name = InfoPlist.strings; 403 | sourceTree = ""; 404 | }; 405 | 6003F59F195388D20070C39A /* Main_iPhone.storyboard */ = { 406 | isa = PBXVariantGroup; 407 | children = ( 408 | 6003F5A0195388D20070C39A /* Base */, 409 | ); 410 | name = Main_iPhone.storyboard; 411 | sourceTree = ""; 412 | }; 413 | 6003F5A2195388D20070C39A /* Main_iPad.storyboard */ = { 414 | isa = PBXVariantGroup; 415 | children = ( 416 | 6003F5A3195388D20070C39A /* Base */, 417 | ); 418 | name = Main_iPad.storyboard; 419 | sourceTree = ""; 420 | }; 421 | 6003F5B8195388D20070C39A /* InfoPlist.strings */ = { 422 | isa = PBXVariantGroup; 423 | children = ( 424 | 6003F5B9195388D20070C39A /* en */, 425 | ); 426 | name = InfoPlist.strings; 427 | sourceTree = ""; 428 | }; 429 | /* End PBXVariantGroup section */ 430 | 431 | /* Begin XCBuildConfiguration section */ 432 | 6003F5BD195388D20070C39A /* Debug */ = { 433 | isa = XCBuildConfiguration; 434 | buildSettings = { 435 | ALWAYS_SEARCH_USER_PATHS = NO; 436 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 437 | CLANG_CXX_LIBRARY = "libc++"; 438 | CLANG_ENABLE_MODULES = YES; 439 | CLANG_ENABLE_OBJC_ARC = YES; 440 | CLANG_WARN_BOOL_CONVERSION = YES; 441 | CLANG_WARN_CONSTANT_CONVERSION = YES; 442 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 443 | CLANG_WARN_EMPTY_BODY = YES; 444 | CLANG_WARN_ENUM_CONVERSION = YES; 445 | CLANG_WARN_INT_CONVERSION = YES; 446 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 447 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 448 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 449 | COPY_PHASE_STRIP = NO; 450 | GCC_C_LANGUAGE_STANDARD = gnu99; 451 | GCC_DYNAMIC_NO_PIC = NO; 452 | GCC_OPTIMIZATION_LEVEL = 0; 453 | GCC_PREPROCESSOR_DEFINITIONS = ( 454 | "DEBUG=1", 455 | "$(inherited)", 456 | ); 457 | GCC_SYMBOLS_PRIVATE_EXTERN = NO; 458 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 459 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 460 | GCC_WARN_UNDECLARED_SELECTOR = YES; 461 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 462 | GCC_WARN_UNUSED_FUNCTION = YES; 463 | GCC_WARN_UNUSED_VARIABLE = YES; 464 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 465 | ONLY_ACTIVE_ARCH = YES; 466 | SDKROOT = iphoneos; 467 | TARGETED_DEVICE_FAMILY = "1,2"; 468 | }; 469 | name = Debug; 470 | }; 471 | 6003F5BE195388D20070C39A /* Release */ = { 472 | isa = XCBuildConfiguration; 473 | buildSettings = { 474 | ALWAYS_SEARCH_USER_PATHS = NO; 475 | CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; 476 | CLANG_CXX_LIBRARY = "libc++"; 477 | CLANG_ENABLE_MODULES = YES; 478 | CLANG_ENABLE_OBJC_ARC = YES; 479 | CLANG_WARN_BOOL_CONVERSION = YES; 480 | CLANG_WARN_CONSTANT_CONVERSION = YES; 481 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; 482 | CLANG_WARN_EMPTY_BODY = YES; 483 | CLANG_WARN_ENUM_CONVERSION = YES; 484 | CLANG_WARN_INT_CONVERSION = YES; 485 | CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; 486 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; 487 | "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; 488 | COPY_PHASE_STRIP = YES; 489 | ENABLE_NS_ASSERTIONS = NO; 490 | GCC_C_LANGUAGE_STANDARD = gnu99; 491 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES; 492 | GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; 493 | GCC_WARN_UNDECLARED_SELECTOR = YES; 494 | GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; 495 | GCC_WARN_UNUSED_FUNCTION = YES; 496 | GCC_WARN_UNUSED_VARIABLE = YES; 497 | IPHONEOS_DEPLOYMENT_TARGET = 7.1; 498 | SDKROOT = iphoneos; 499 | TARGETED_DEVICE_FAMILY = "1,2"; 500 | VALIDATE_PRODUCT = YES; 501 | }; 502 | name = Release; 503 | }; 504 | 6003F5C0195388D20070C39A /* Debug */ = { 505 | isa = XCBuildConfiguration; 506 | baseConfigurationReference = D8713BE7E2A8420090434D76 /* Pods-MPParallaxCollection.xcconfig */; 507 | buildSettings = { 508 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 509 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 510 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 511 | GCC_PREFIX_HEADER = "MPParallaxCollection/MPParallaxCollection-Prefix.pch"; 512 | INFOPLIST_FILE = "MPParallaxCollection/MPParallaxCollection-Info.plist"; 513 | PRODUCT_NAME = "$(TARGET_NAME)"; 514 | WRAPPER_EXTENSION = app; 515 | }; 516 | name = Debug; 517 | }; 518 | 6003F5C1195388D20070C39A /* Release */ = { 519 | isa = XCBuildConfiguration; 520 | baseConfigurationReference = D8713BE7E2A8420090434D76 /* Pods-MPParallaxCollection.xcconfig */; 521 | buildSettings = { 522 | ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; 523 | ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; 524 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 525 | GCC_PREFIX_HEADER = "MPParallaxCollection/MPParallaxCollection-Prefix.pch"; 526 | INFOPLIST_FILE = "MPParallaxCollection/MPParallaxCollection-Info.plist"; 527 | PRODUCT_NAME = "$(TARGET_NAME)"; 528 | WRAPPER_EXTENSION = app; 529 | }; 530 | name = Release; 531 | }; 532 | 6003F5C3195388D20070C39A /* Debug */ = { 533 | isa = XCBuildConfiguration; 534 | baseConfigurationReference = B4F4646E69BE4B2797861C4C /* Pods-Tests.xcconfig */; 535 | buildSettings = { 536 | BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/MPParallaxCollection.app/MPParallaxCollection"; 537 | FRAMEWORK_SEARCH_PATHS = ( 538 | "$(SDKROOT)/Developer/Library/Frameworks", 539 | "$(inherited)", 540 | "$(DEVELOPER_FRAMEWORKS_DIR)", 541 | ); 542 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 543 | GCC_PREFIX_HEADER = "Tests/Tests-Prefix.pch"; 544 | GCC_PREPROCESSOR_DEFINITIONS = ( 545 | "DEBUG=1", 546 | "$(inherited)", 547 | ); 548 | INFOPLIST_FILE = "Tests/Tests-Info.plist"; 549 | PRODUCT_NAME = "$(TARGET_NAME)"; 550 | TEST_HOST = "$(BUNDLE_LOADER)"; 551 | WRAPPER_EXTENSION = xctest; 552 | }; 553 | name = Debug; 554 | }; 555 | 6003F5C4195388D20070C39A /* Release */ = { 556 | isa = XCBuildConfiguration; 557 | baseConfigurationReference = B4F4646E69BE4B2797861C4C /* Pods-Tests.xcconfig */; 558 | buildSettings = { 559 | BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/MPParallaxCollection.app/MPParallaxCollection"; 560 | FRAMEWORK_SEARCH_PATHS = ( 561 | "$(SDKROOT)/Developer/Library/Frameworks", 562 | "$(inherited)", 563 | "$(DEVELOPER_FRAMEWORKS_DIR)", 564 | ); 565 | GCC_PRECOMPILE_PREFIX_HEADER = YES; 566 | GCC_PREFIX_HEADER = "Tests/Tests-Prefix.pch"; 567 | INFOPLIST_FILE = "Tests/Tests-Info.plist"; 568 | PRODUCT_NAME = "$(TARGET_NAME)"; 569 | TEST_HOST = "$(BUNDLE_LOADER)"; 570 | WRAPPER_EXTENSION = xctest; 571 | }; 572 | name = Release; 573 | }; 574 | /* End XCBuildConfiguration section */ 575 | 576 | /* Begin XCConfigurationList section */ 577 | 6003F585195388D10070C39A /* Build configuration list for PBXProject "MPParallaxCollection" */ = { 578 | isa = XCConfigurationList; 579 | buildConfigurations = ( 580 | 6003F5BD195388D20070C39A /* Debug */, 581 | 6003F5BE195388D20070C39A /* Release */, 582 | ); 583 | defaultConfigurationIsVisible = 0; 584 | defaultConfigurationName = Release; 585 | }; 586 | 6003F5BF195388D20070C39A /* Build configuration list for PBXNativeTarget "MPParallaxCollection" */ = { 587 | isa = XCConfigurationList; 588 | buildConfigurations = ( 589 | 6003F5C0195388D20070C39A /* Debug */, 590 | 6003F5C1195388D20070C39A /* Release */, 591 | ); 592 | defaultConfigurationIsVisible = 0; 593 | defaultConfigurationName = Release; 594 | }; 595 | 6003F5C2195388D20070C39A /* Build configuration list for PBXNativeTarget "Tests" */ = { 596 | isa = XCConfigurationList; 597 | buildConfigurations = ( 598 | 6003F5C3195388D20070C39A /* Debug */, 599 | 6003F5C4195388D20070C39A /* Release */, 600 | ); 601 | defaultConfigurationIsVisible = 0; 602 | defaultConfigurationName = Release; 603 | }; 604 | /* End XCConfigurationList section */ 605 | }; 606 | rootObject = 6003F582195388D10070C39A /* Project object */; 607 | } 608 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | 2 | 4 | 6 | 7 | 8 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection.xcodeproj/xcshareddata/xcschemes/MPParallaxCollection.xcscheme: -------------------------------------------------------------------------------- 1 | 2 | 5 | 8 | 9 | 15 | 21 | 22 | 23 | 24 | 25 | 30 | 31 | 33 | 39 | 40 | 41 | 42 | 43 | 49 | 50 | 51 | 52 | 61 | 62 | 68 | 69 | 70 | 71 | 72 | 73 | 79 | 80 | 86 | 87 | 88 | 89 | 91 | 92 | 95 | 96 | 97 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/1@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/Example/MPParallaxCollection/1@2x.png -------------------------------------------------------------------------------- /Example/MPParallaxCollection/2@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/Example/MPParallaxCollection/2@2x.png -------------------------------------------------------------------------------- /Example/MPParallaxCollection/3@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/Example/MPParallaxCollection/3@2x.png -------------------------------------------------------------------------------- /Example/MPParallaxCollection/4@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/Example/MPParallaxCollection/4@2x.png -------------------------------------------------------------------------------- /Example/MPParallaxCollection/5@2x.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/Example/MPParallaxCollection/5@2x.png -------------------------------------------------------------------------------- /Example/MPParallaxCollection/Base.lproj/Main_iPad.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/Base.lproj/Main_iPhone.storyboard: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 | 21 | 22 | 23 | 24 | 25 | 26 | 27 | 28 | 29 | 30 | 31 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/Images.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "idiom" : "iphone", 5 | "size" : "29x29", 6 | "scale" : "2x" 7 | }, 8 | { 9 | "idiom" : "iphone", 10 | "size" : "40x40", 11 | "scale" : "2x" 12 | }, 13 | { 14 | "idiom" : "iphone", 15 | "size" : "60x60", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "idiom" : "ipad", 20 | "size" : "29x29", 21 | "scale" : "1x" 22 | }, 23 | { 24 | "idiom" : "ipad", 25 | "size" : "29x29", 26 | "scale" : "2x" 27 | }, 28 | { 29 | "idiom" : "ipad", 30 | "size" : "40x40", 31 | "scale" : "1x" 32 | }, 33 | { 34 | "idiom" : "ipad", 35 | "size" : "40x40", 36 | "scale" : "2x" 37 | }, 38 | { 39 | "idiom" : "ipad", 40 | "size" : "76x76", 41 | "scale" : "1x" 42 | }, 43 | { 44 | "idiom" : "ipad", 45 | "size" : "76x76", 46 | "scale" : "2x" 47 | } 48 | ], 49 | "info" : { 50 | "version" : 1, 51 | "author" : "xcode" 52 | } 53 | } 54 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/Images.xcassets/LaunchImage.launchimage/Contents.json: -------------------------------------------------------------------------------- 1 | { 2 | "images" : [ 3 | { 4 | "orientation" : "portrait", 5 | "idiom" : "iphone", 6 | "extent" : "full-screen", 7 | "minimum-system-version" : "7.0", 8 | "scale" : "2x" 9 | }, 10 | { 11 | "orientation" : "portrait", 12 | "idiom" : "iphone", 13 | "subtype" : "retina4", 14 | "extent" : "full-screen", 15 | "minimum-system-version" : "7.0", 16 | "scale" : "2x" 17 | }, 18 | { 19 | "orientation" : "portrait", 20 | "idiom" : "ipad", 21 | "extent" : "full-screen", 22 | "minimum-system-version" : "7.0", 23 | "scale" : "1x" 24 | }, 25 | { 26 | "orientation" : "landscape", 27 | "idiom" : "ipad", 28 | "extent" : "full-screen", 29 | "minimum-system-version" : "7.0", 30 | "scale" : "1x" 31 | }, 32 | { 33 | "orientation" : "portrait", 34 | "idiom" : "ipad", 35 | "extent" : "full-screen", 36 | "minimum-system-version" : "7.0", 37 | "scale" : "2x" 38 | }, 39 | { 40 | "orientation" : "landscape", 41 | "idiom" : "ipad", 42 | "extent" : "full-screen", 43 | "minimum-system-version" : "7.0", 44 | "scale" : "2x" 45 | } 46 | ], 47 | "info" : { 48 | "version" : 1, 49 | "author" : "xcode" 50 | } 51 | } 52 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/MPAppDelegate.h: -------------------------------------------------------------------------------- 1 | // 2 | // MPAppDelegate.h 3 | // MPParallaxCollection 4 | // 5 | // Created by CocoaPods on 08/05/2014. 6 | // Copyright (c) 2014 Alex Manzella. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @interface MPAppDelegate : UIResponder 12 | 13 | @property (strong, nonatomic) UIWindow *window; 14 | 15 | @end 16 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/MPAppDelegate.m: -------------------------------------------------------------------------------- 1 | // 2 | // MPAppDelegate.m 3 | // MPParallaxCollection 4 | // 5 | // Created by CocoaPods on 08/05/2014. 6 | // Copyright (c) 2014 Alex Manzella. All rights reserved. 7 | // 8 | 9 | #import "MPAppDelegate.h" 10 | 11 | @implementation MPAppDelegate 12 | 13 | - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 14 | { 15 | // Override point for customization after application launch. 16 | return YES; 17 | } 18 | 19 | - (void)applicationWillResignActive:(UIApplication *)application 20 | { 21 | // 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. 22 | // 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. 23 | } 24 | 25 | - (void)applicationDidEnterBackground:(UIApplication *)application 26 | { 27 | // 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. 28 | // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. 29 | } 30 | 31 | - (void)applicationWillEnterForeground:(UIApplication *)application 32 | { 33 | // 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. 34 | } 35 | 36 | - (void)applicationDidBecomeActive:(UIApplication *)application 37 | { 38 | // 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. 39 | } 40 | 41 | - (void)applicationWillTerminate:(UIApplication *)application 42 | { 43 | // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. 44 | } 45 | 46 | @end 47 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/MPParallaxCollection-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleDisplayName 8 | ${PRODUCT_NAME} 9 | CFBundleExecutable 10 | ${EXECUTABLE_NAME} 11 | CFBundleIdentifier 12 | org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier} 13 | CFBundleInfoDictionaryVersion 14 | 6.0 15 | CFBundleName 16 | ${PRODUCT_NAME} 17 | CFBundlePackageType 18 | APPL 19 | CFBundleShortVersionString 20 | 1.0 21 | CFBundleSignature 22 | ???? 23 | CFBundleVersion 24 | 1.0 25 | LSRequiresIPhoneOS 26 | 27 | UIMainStoryboardFile 28 | Main_iPhone 29 | UIMainStoryboardFile~ipad 30 | Main_iPad 31 | UIRequiredDeviceCapabilities 32 | 33 | armv7 34 | 35 | UISupportedInterfaceOrientations 36 | 37 | UIInterfaceOrientationPortrait 38 | UIInterfaceOrientationLandscapeLeft 39 | UIInterfaceOrientationLandscapeRight 40 | 41 | UISupportedInterfaceOrientations~ipad 42 | 43 | UIInterfaceOrientationPortrait 44 | UIInterfaceOrientationPortraitUpsideDown 45 | UIInterfaceOrientationLandscapeLeft 46 | UIInterfaceOrientationLandscapeRight 47 | 48 | 49 | 50 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/MPParallaxCollection-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every source file. 5 | // 6 | 7 | #import 8 | 9 | #ifndef __IPHONE_5_0 10 | #warning "This project uses features only available in iOS SDK 5.0 and later." 11 | #endif 12 | 13 | #ifdef __OBJC__ 14 | #import 15 | #import 16 | #endif 17 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/MPViewController.h: -------------------------------------------------------------------------------- 1 | // 2 | // MPViewController.h 3 | // MPPercentDriven 4 | // 5 | // Created by Alex Manzella on 27/05/14. 6 | // Copyright (c) 2014 mpow. All rights reserved. 7 | // 8 | 9 | #import 10 | #import "MPParallaxLayout.h" 11 | #import "MPParallaxCollectionViewCell.h" 12 | 13 | @interface MPViewController : UIViewController{ 14 | 15 | UICollectionView *_collectionView; 16 | 17 | } 18 | 19 | @end 20 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/MPViewController.m: -------------------------------------------------------------------------------- 1 | // 2 | // MPViewController.m 3 | // MPSkewed 4 | // 5 | // Created by Alex Manzella on 23/05/14. 6 | // Copyright (c) 2014 mpow. All rights reserved. 7 | // 8 | 9 | #import "MPViewController.h" 10 | #import "MPTextReavealLabel.h" 11 | 12 | static NSString *kCell=@"cell"; 13 | 14 | 15 | 16 | @interface MPViewController () 17 | 18 | @end 19 | 20 | @implementation MPViewController 21 | 22 | - (void)viewDidLoad 23 | { 24 | [super viewDidLoad]; 25 | 26 | self.navigationController.navigationBarHidden=YES; 27 | 28 | 29 | MPParallaxLayout *layout=[[MPParallaxLayout alloc] init]; 30 | 31 | _collectionView=[[UICollectionView alloc] initWithFrame:self.view.bounds collectionViewLayout:layout]; 32 | _collectionView.delegate=self; 33 | _collectionView.dataSource=self; 34 | _collectionView.showsHorizontalScrollIndicator=NO; 35 | _collectionView.pagingEnabled=YES; 36 | _collectionView.backgroundColor=[UIColor whiteColor]; 37 | [_collectionView registerClass:[MPParallaxCollectionViewCell class] forCellWithReuseIdentifier:kCell]; 38 | [self.view addSubview:_collectionView]; 39 | 40 | } 41 | 42 | 43 | 44 | - (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section{ 45 | 46 | return 30; 47 | } 48 | 49 | - (UICollectionViewCell *)collectionView:(UICollectionView *)collectionView cellForItemAtIndexPath:(NSIndexPath *)indexPath{ 50 | 51 | MPParallaxCollectionViewCell* cell = (MPParallaxCollectionViewCell *)[collectionView dequeueReusableCellWithReuseIdentifier:kCell forIndexPath:indexPath]; 52 | 53 | cell.image=[UIImage imageNamed:[NSString stringWithFormat:@"%li",(long)indexPath.item%5+1]]; 54 | 55 | cell.delegate=self; 56 | 57 | NSString *text; 58 | 59 | NSInteger index=indexPath.row%5; 60 | 61 | switch (index) { 62 | case 0: 63 | text=@"THAT"; 64 | break; 65 | case 1: 66 | text=@"LOOKS"; 67 | break; 68 | case 2: 69 | text=@"PRETTY"; 70 | break; 71 | case 3: 72 | text=@"GOOD"; 73 | break; 74 | case 4: 75 | text=@"!!!!!"; 76 | break; 77 | default: 78 | break; 79 | 80 | } 81 | 82 | 83 | // that shit just to not make dirty MPParallaxCollectionViewCell ... I add that only to demonstrate how to use the percent driven stuff 84 | if (![cell viewWithTag:3838]) { 85 | MPTextReavealLabel *label=[[MPTextReavealLabel alloc] initWithFrame:CGRectMake(20, 80+30*indexPath.row, 280, 160)]; 86 | label.tag=3838; 87 | label.lineWidth=3; 88 | [cell addSubview:label]; 89 | 90 | } 91 | 92 | MPTextReavealLabel *label=(MPTextReavealLabel *)[cell viewWithTag:3838]; 93 | label.frame=CGRectMake(20, 80+30*indexPath.row, 280, 160); 94 | label.attributedText=[[NSAttributedString alloc] initWithString:text attributes:@{NSForegroundColorAttributeName : [UIColor whiteColor],NSFontAttributeName : [UIFont fontWithName:@"HelveticaNeue-light" size:75]}]; 95 | 96 | 97 | 98 | return cell; 99 | } 100 | 101 | - (void)cell:(MPParallaxCollectionViewCell *)cell changeParallaxValueTo:(CGFloat)value{ 102 | 103 | NSLog(@"%f",value); 104 | 105 | MPTextReavealLabel *label=(MPTextReavealLabel *)[cell viewWithTag:3838]; 106 | CGFloat val=1-(value<0 ? -value : value); 107 | [label drawToValue:val*val]; 108 | } 109 | 110 | @end 111 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /Example/MPParallaxCollection/main.m: -------------------------------------------------------------------------------- 1 | // 2 | // main.m 3 | // MPParallaxCollection 4 | // 5 | // Created by Alex Manzella on 08/05/2014. 6 | // Copyright (c) 2014 Alex Manzella. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | #import "MPAppDelegate.h" 12 | 13 | int main(int argc, char * argv[]) 14 | { 15 | @autoreleasepool { 16 | return UIApplicationMain(argc, argv, nil, NSStringFromClass([MPAppDelegate class])); 17 | } 18 | } 19 | -------------------------------------------------------------------------------- /Example/Podfile: -------------------------------------------------------------------------------- 1 | target 'MPParallaxCollection', :exclusive => true do 2 | pod "MPParallaxCollection", :path => "../" 3 | pod "MPTextReveal" 4 | 5 | end 6 | 7 | target 'Tests', :exclusive => true do 8 | pod "MPParallaxCollection", :path => "../" 9 | end 10 | -------------------------------------------------------------------------------- /Example/Podfile.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - MPParallaxCollection (0.1.0) 3 | - MPTextReveal (0.1.0) 4 | 5 | DEPENDENCIES: 6 | - MPParallaxCollection (from `../`) 7 | - MPTextReveal 8 | 9 | EXTERNAL SOURCES: 10 | MPParallaxCollection: 11 | :path: ../ 12 | 13 | SPEC CHECKSUMS: 14 | MPParallaxCollection: b697bfaafccb2fa3d1ac09613dca4cb030ab00e3 15 | MPTextReveal: 29988b398eed444171ddb2b589307aabe27b99a7 16 | 17 | COCOAPODS: 0.33.1 18 | -------------------------------------------------------------------------------- /Example/Pods/BuildHeaders/MPParallaxCollection/MPParallaxCollectionViewCell.h: -------------------------------------------------------------------------------- 1 | ../../../../Classes/MPParallaxCollectionViewCell.h -------------------------------------------------------------------------------- /Example/Pods/BuildHeaders/MPParallaxCollection/MPParallaxLayout.h: -------------------------------------------------------------------------------- 1 | ../../../../Classes/MPParallaxLayout.h -------------------------------------------------------------------------------- /Example/Pods/BuildHeaders/MPTextReveal/MPTextReavealLabel.h: -------------------------------------------------------------------------------- 1 | ../../MPTextReveal/Classes/MPTextReavealLabel.h -------------------------------------------------------------------------------- /Example/Pods/Headers/MPParallaxCollection/MPParallaxCollectionViewCell.h: -------------------------------------------------------------------------------- 1 | ../../../../Classes/MPParallaxCollectionViewCell.h -------------------------------------------------------------------------------- /Example/Pods/Headers/MPParallaxCollection/MPParallaxLayout.h: -------------------------------------------------------------------------------- 1 | ../../../../Classes/MPParallaxLayout.h -------------------------------------------------------------------------------- /Example/Pods/Headers/MPTextReveal/MPTextReavealLabel.h: -------------------------------------------------------------------------------- 1 | ../../MPTextReveal/Classes/MPTextReavealLabel.h -------------------------------------------------------------------------------- /Example/Pods/Local Podspecs/MPParallaxCollection.podspec: -------------------------------------------------------------------------------- 1 | # 2 | # Be sure to run `pod lib lint MPParallaxCollection.podspec' to ensure this is a 3 | # valid spec and remove all comments before submitting the spec. 4 | # 5 | # Any lines starting with a # are optional, but encouraged 6 | # 7 | # To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html 8 | # 9 | 10 | Pod::Spec.new do |s| 11 | s.name = "MPParallaxCollection" 12 | s.version = "0.1.0" 13 | s.summary = "CollectionView with Parallax and PercentDriven animations" 14 | s.description = <<-DESC 15 | A collection view layout and a cell subclass usefull to made parallax of an image during the scrolling. 16 | But even thanks to the delegate useful to make cool percent driven effect, in the example I used my [MPTextReveal](https://github.com/MP0w/MPTextReveal) 17 | to show you how to use. 18 | DESC 19 | s.homepage = "https://github.com/MP0w/MPParallaxCollection" 20 | s.license = 'BSD' 21 | s.author = { "Alex Manzella" => "manzopower@icloud.com" } 22 | s.source = { :git => "https://github.com/MP0w/MPParallaxCollection.git", :tag => s.version.to_s } 23 | s.social_media_url = 'https://twitter.com/manzopower' 24 | 25 | s.platform = :ios, '7.0' 26 | s.requires_arc = true 27 | 28 | s.source_files = 'Classes/' 29 | 30 | # s.dependency 'AFNetworking', '~> 2.3' 31 | end 32 | -------------------------------------------------------------------------------- /Example/Pods/MPTextReveal/Classes/MPTextReavealLabel.h: -------------------------------------------------------------------------------- 1 | // 2 | // MPTextReavealLabel.h 3 | // MPTextReveal 4 | // 5 | // Created by Alex Manzella on 27/05/14. 6 | // Copyright (c) 2014 mpow. All rights reserved. 7 | // 8 | 9 | #import 10 | 11 | @import CoreText; 12 | 13 | @class MPTextReavealLabel; 14 | 15 | @protocol MPTextReavealLabelAnimationsDelegate 16 | 17 | - (void)textReavealLabel:(MPTextReavealLabel *)label didFinishAnimationKey:(NSString *)key; 18 | 19 | @end 20 | 21 | @interface MPTextReavealLabel : UIView 22 | 23 | @property (nonatomic,readwrite) CAShapeLayer *layer; 24 | @property (nonatomic,assign) id delegate; 25 | @property (nonatomic,readwrite) UIFont *font; 26 | @property (nonatomic,readwrite) UIColor *textColor; 27 | @property (nonatomic,copy) NSString *text; 28 | @property (nonatomic,assign) BOOL reversedAnimation; 29 | @property (nonatomic,copy) NSAttributedString *attributedText; // alternative of the other... 30 | @property (nonatomic,assign) CGFloat lineWidth; 31 | 32 | - (void)animateWithDuration:(CGFloat)duration; 33 | - (void)hideAnimatedWithDuration:(CGFloat)duration; 34 | 35 | - (void)drawToValue:(CGFloat)value; // between 0 and 1 36 | 37 | @end 38 | -------------------------------------------------------------------------------- /Example/Pods/MPTextReveal/Classes/MPTextReavealLabel.m: -------------------------------------------------------------------------------- 1 | // 2 | // MPTextReavealLabel.m 3 | // MPTextReveal 4 | // 5 | // Created by Alex Manzella on 27/05/14. 6 | // Copyright (c) 2014 mpow. All rights reserved. 7 | // 8 | 9 | #import "MPTextReavealLabel.h" 10 | 11 | @implementation MPTextReavealLabel 12 | 13 | @synthesize attributedText=_attributedText,font=_font,text=_text,textColor=_textColor; 14 | 15 | - (id)initWithFrame:(CGRect)frame 16 | { 17 | self = [super initWithFrame:frame]; 18 | if (self) { 19 | 20 | self.backgroundColor=[UIColor clearColor]; 21 | self.reversedAnimation=1; 22 | 23 | } 24 | return self; 25 | } 26 | 27 | + (Class) layerClass{ 28 | 29 | return [CAShapeLayer class]; 30 | 31 | } 32 | 33 | - (void)drawRect:(CGRect)rect 34 | { 35 | 36 | [super drawRect:rect]; 37 | 38 | if (!self.attributedText) { 39 | return; 40 | } 41 | 42 | NSRange range=NSMakeRange(0, 1); 43 | 44 | 45 | UIColor *textColor; 46 | if(_attributedText) 47 | textColor = [_attributedText attribute:NSForegroundColorAttributeName atIndex:0 longestEffectiveRange:&range inRange:NSMakeRange(0, 1)]; 48 | else textColor = self.textColor; 49 | 50 | self.layer.fillRule = kCAFillRuleNonZero; 51 | self.layer.fillColor=[UIColor clearColor].CGColor; 52 | self.layer.strokeColor=textColor.CGColor; 53 | self.layer.lineWidth=_lineWidth>0 ? _lineWidth : 1; 54 | self.layer.path=[self pathRefFromText]; 55 | 56 | } 57 | 58 | 59 | 60 | 61 | - (void)animateWithDuration:(CGFloat)duration{ 62 | 63 | 64 | [self addLayerAnimationForKeyPath:@"strokeEnd" fromValue:@0 toValue:@1 duration:duration]; 65 | 66 | } 67 | 68 | - (void)hideAnimatedWithDuration:(CGFloat)duration{ 69 | 70 | [self addLayerAnimationForKeyPath:@"strokeStart" fromValue:@0 toValue:@1 duration:duration]; 71 | } 72 | 73 | 74 | - (void)addLayerAnimationForKeyPath:(NSString *)keypath fromValue:(id)from toValue:(id)value duration:(CGFloat)duration{ 75 | 76 | CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:keypath]; 77 | animation.delegate=self; 78 | animation.fromValue= from; 79 | animation.toValue = value; 80 | animation.duration = duration; 81 | [self.layer addAnimation:animation forKey:keypath]; 82 | 83 | } 84 | 85 | - (void)drawToValue:(CGFloat)value{ 86 | 87 | self.layer.strokeEnd=value; 88 | } 89 | 90 | -(CGPathRef)pathRefFromText 91 | { 92 | NSAttributedString *attributed = self.attributedText; 93 | 94 | CGMutablePathRef letters = CGPathCreateMutable(); 95 | CTLineRef line = CTLineCreateWithAttributedString((__bridge CFAttributedStringRef)attributed); 96 | CFArrayRef runArray = CTLineGetGlyphRuns(line); 97 | for (CFIndex runIndex = 0; runIndex < CFArrayGetCount(runArray); runIndex++) 98 | { 99 | CTRunRef run = (CTRunRef)CFArrayGetValueAtIndex(runArray, runIndex); 100 | CTFontRef runFont = CFDictionaryGetValue(CTRunGetAttributes(run), kCTFontAttributeName); 101 | 102 | for (CFIndex runGlyphIndex = 0; runGlyphIndex < CTRunGetGlyphCount(run); runGlyphIndex++) 103 | { 104 | CFRange thisGlyphRange = CFRangeMake(runGlyphIndex, 1); 105 | CGGlyph glyph; 106 | CGPoint position; 107 | CTRunGetGlyphs(run, thisGlyphRange, &glyph); 108 | CTRunGetPositions(run, thisGlyphRange, &position); 109 | 110 | CGPathRef letter = CTFontCreatePathForGlyph(runFont, glyph, NULL); 111 | CGAffineTransform t = CGAffineTransformMakeTranslation(position.x, position.y); 112 | CGPathAddPath(letters, &t, letter); 113 | CGPathRelease(letter); 114 | } 115 | } 116 | 117 | UIBezierPath *path = [UIBezierPath bezierPathWithCGPath:letters]; 118 | CGRect boundingBox = CGPathGetBoundingBox(letters); 119 | CGPathRelease(letters); 120 | CFRelease(line); 121 | 122 | 123 | [path applyTransform:CGAffineTransformMakeScale(1.0, -1.0)]; 124 | [path applyTransform:CGAffineTransformMakeTranslation(0.0, boundingBox.size.height)]; 125 | 126 | 127 | if (self.reversedAnimation) { 128 | return [[path bezierPathByReversingPath] CGPath]; 129 | } 130 | 131 | return [path CGPath]; 132 | } 133 | 134 | 135 | - (void)animationDidStop:(CABasicAnimation *)anim finished:(BOOL)flag{ 136 | 137 | if ([self.delegate respondsToSelector:@selector(textReavealLabel:didFinishAnimationKey:)]) { 138 | [self.delegate textReavealLabel:self didFinishAnimationKey:[[anim keyPath] copy]]; 139 | } 140 | 141 | } 142 | 143 | 144 | 145 | 146 | #pragma mark custom setters 147 | 148 | - (void)setFont:(UIFont *)font{ 149 | _font=font; 150 | [self setNeedsDisplay]; 151 | } 152 | 153 | - (void)setText:(NSString *)text{ 154 | _text=text; 155 | [self setNeedsDisplay]; 156 | } 157 | 158 | - (void)setTextColor:(UIColor *)textColor{ 159 | _textColor=textColor; 160 | [self setNeedsDisplay]; 161 | } 162 | 163 | -(void)setAttributedText:(NSAttributedString *)attributedtext{ 164 | _attributedText=attributedtext; 165 | [self setNeedsDisplay]; 166 | } 167 | 168 | #pragma mark custom getters 169 | 170 | - (UIFont *)font{ 171 | 172 | return _font ? _font : [UIFont systemFontOfSize:20]; 173 | } 174 | 175 | 176 | - (UIColor *)textColor{ 177 | 178 | return _textColor ? _textColor : [UIColor blueColor]; 179 | } 180 | 181 | - (NSString *)text{ 182 | 183 | return _text; 184 | 185 | } 186 | 187 | 188 | - (NSAttributedString *)attributedText{ 189 | 190 | if (_attributedText) { 191 | return _attributedText; 192 | }else if(self.text){ 193 | 194 | return [[NSAttributedString alloc] initWithString:self.text attributes:@{NSForegroundColorAttributeName : self.textColor, NSFontAttributeName : self.font}]; 195 | } 196 | 197 | return nil; 198 | } 199 | 200 | 201 | @end 202 | -------------------------------------------------------------------------------- /Example/Pods/MPTextReveal/LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) 2014 Alex Manzella 2 | 3 | Permission is hereby granted, free of charge, to any person obtaining a copy 4 | of this software and associated documentation files (the "Software"), to deal 5 | in the Software without restriction, including without limitation the rights 6 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 7 | copies of the Software, and to permit persons to whom the Software is 8 | furnished to do so, subject to the following conditions: 9 | 10 | The above copyright notice and this permission notice shall be included in 11 | all copies or substantial portions of the Software. 12 | 13 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 14 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 15 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 16 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 17 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 18 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 19 | THE SOFTWARE. 20 | -------------------------------------------------------------------------------- /Example/Pods/MPTextReveal/README.md: -------------------------------------------------------------------------------- 1 | # MPTextReveal 2 | 3 | animate the text reveal or percent drive it 4 | better example of cool usage: 5 | https://github.com/MP0w/MPParallaxCollection 6 | 7 | 8 | [![CI Status](http://img.shields.io/travis/Alex Manzella/MPTextReveal.svg?style=flat)](https://travis-ci.org/Alex Manzella/MPTextReveal) 9 | [![Version](https://img.shields.io/cocoapods/v/MPTextReveal.svg?style=flat)](http://cocoadocs.org/docsets/MPTextReveal) 10 | [![License](https://img.shields.io/cocoapods/l/MPTextReveal.svg?style=flat)](http://cocoadocs.org/docsets/MPTextReveal) 11 | [![Platform](https://img.shields.io/cocoapods/p/MPTextReveal.svg?style=flat)](http://cocoadocs.org/docsets/MPTextReveal) 12 | 13 | ## Usage 14 | 15 | To run the example project, clone the repo, and run `pod install` from the Example directory first. 16 | 17 | ## Requirements 18 | 19 | ## Installation 20 | 21 | MPTextReveal is available through [CocoaPods](http://cocoapods.org). To install 22 | it, simply add the following line to your Podfile: 23 | 24 | pod "MPTextReveal" 25 | 26 | ## Author 27 | 28 | Alex Manzella, manzopower@icloud.com 29 | 30 | ## License 31 | 32 | MPTextReveal is available under the MIT license. See the LICENSE file for more info. 33 | 34 | -------------------------------------------------------------------------------- /Example/Pods/Manifest.lock: -------------------------------------------------------------------------------- 1 | PODS: 2 | - MPParallaxCollection (0.1.0) 3 | - MPTextReveal (0.1.0) 4 | 5 | DEPENDENCIES: 6 | - MPParallaxCollection (from `../`) 7 | - MPTextReveal 8 | 9 | EXTERNAL SOURCES: 10 | MPParallaxCollection: 11 | :path: ../ 12 | 13 | SPEC CHECKSUMS: 14 | MPParallaxCollection: b697bfaafccb2fa3d1ac09613dca4cb030ab00e3 15 | MPTextReveal: 29988b398eed444171ddb2b589307aabe27b99a7 16 | 17 | COCOAPODS: 0.33.1 18 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-MPParallaxCollection-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-MPParallaxCollection-MPParallaxCollection.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/BuildHeaders" "${PODS_ROOT}/BuildHeaders/MPParallaxCollection" "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/MPParallaxCollection" "${PODS_ROOT}/Headers/MPTextReveal" 4 | OTHER_LDFLAGS = -ObjC 5 | PODS_ROOT = ${SRCROOT} -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-MPParallaxCollection-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_MPParallaxCollection_MPParallaxCollection : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_MPParallaxCollection_MPParallaxCollection 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-MPParallaxCollection-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-MPParallaxCollection-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-MPParallaxCollection.xcconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/Example/Pods/Pods-MPParallaxCollection-MPParallaxCollection.xcconfig -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-MPTextReveal-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-MPParallaxCollection-MPTextReveal.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/BuildHeaders" "${PODS_ROOT}/BuildHeaders/MPTextReveal" "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/MPParallaxCollection" "${PODS_ROOT}/Headers/MPTextReveal" 4 | OTHER_LDFLAGS = -ObjC 5 | PODS_ROOT = ${SRCROOT} -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-MPTextReveal-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_MPParallaxCollection_MPTextReveal : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_MPParallaxCollection_MPTextReveal 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-MPTextReveal-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-MPParallaxCollection-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-MPTextReveal.xcconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/Example/Pods/Pods-MPParallaxCollection-MPTextReveal.xcconfig -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## MPParallaxCollection 5 | 6 | Copyright (c) Alex Manzella. 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | 1. Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | 15 | 2. Redistributions in binary form must reproduce the above copyright 16 | notice, this list of conditions and the following disclaimer in the 17 | documentation and/or other materials provided with the distribution. 18 | 19 | 3. Neither the name of Alex Manzella nor the names of its contributors may be used 20 | to endorse or promote products derived from this software without 21 | specific prior written permission. 22 | 23 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 24 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 25 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 26 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 27 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 28 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 30 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 32 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 | 34 | 35 | ## MPTextReveal 36 | 37 | Copyright (c) 2014 Alex Manzella 38 | 39 | Permission is hereby granted, free of charge, to any person obtaining a copy 40 | of this software and associated documentation files (the "Software"), to deal 41 | in the Software without restriction, including without limitation the rights 42 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 43 | copies of the Software, and to permit persons to whom the Software is 44 | furnished to do so, subject to the following conditions: 45 | 46 | The above copyright notice and this permission notice shall be included in 47 | all copies or substantial portions of the Software. 48 | 49 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 50 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 51 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 52 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 53 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 54 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 55 | THE SOFTWARE. 56 | 57 | Generated by CocoaPods - http://cocoapods.org 58 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | Copyright (c) Alex Manzella. 18 | All rights reserved. 19 | 20 | Redistribution and use in source and binary forms, with or without modification, 21 | are permitted provided that the following conditions are met: 22 | 23 | 1. Redistributions of source code must retain the above copyright notice, 24 | this list of conditions and the following disclaimer. 25 | 26 | 2. Redistributions in binary form must reproduce the above copyright 27 | notice, this list of conditions and the following disclaimer in the 28 | documentation and/or other materials provided with the distribution. 29 | 30 | 3. Neither the name of Alex Manzella nor the names of its contributors may be used 31 | to endorse or promote products derived from this software without 32 | specific prior written permission. 33 | 34 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 35 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 36 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 37 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 38 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 39 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 40 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 41 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 42 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 43 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 44 | 45 | Title 46 | MPParallaxCollection 47 | Type 48 | PSGroupSpecifier 49 | 50 | 51 | FooterText 52 | Copyright (c) 2014 Alex Manzella <manzopower@icloud.com> 53 | 54 | Permission is hereby granted, free of charge, to any person obtaining a copy 55 | of this software and associated documentation files (the "Software"), to deal 56 | in the Software without restriction, including without limitation the rights 57 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 58 | copies of the Software, and to permit persons to whom the Software is 59 | furnished to do so, subject to the following conditions: 60 | 61 | The above copyright notice and this permission notice shall be included in 62 | all copies or substantial portions of the Software. 63 | 64 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 65 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 66 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 67 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 68 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 69 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN 70 | THE SOFTWARE. 71 | 72 | Title 73 | MPTextReveal 74 | Type 75 | PSGroupSpecifier 76 | 77 | 78 | FooterText 79 | Generated by CocoaPods - http://cocoapods.org 80 | Title 81 | 82 | Type 83 | PSGroupSpecifier 84 | 85 | 86 | StringsTable 87 | Acknowledgements 88 | Title 89 | Acknowledgements 90 | 91 | 92 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_MPParallaxCollection : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_MPParallaxCollection 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-environment.h: -------------------------------------------------------------------------------- 1 | 2 | // To check if a library is compiled with CocoaPods you 3 | // can use the `COCOAPODS` macro definition which is 4 | // defined in the xcconfigs so it is available in 5 | // headers also when they are imported in the client 6 | // project. 7 | 8 | 9 | // MPParallaxCollection 10 | #define COCOAPODS_POD_AVAILABLE_MPParallaxCollection 11 | #define COCOAPODS_VERSION_MAJOR_MPParallaxCollection 0 12 | #define COCOAPODS_VERSION_MINOR_MPParallaxCollection 1 13 | #define COCOAPODS_VERSION_PATCH_MPParallaxCollection 0 14 | 15 | // MPTextReveal 16 | #define COCOAPODS_POD_AVAILABLE_MPTextReveal 17 | #define COCOAPODS_VERSION_MAJOR_MPTextReveal 0 18 | #define COCOAPODS_VERSION_MINOR_MPTextReveal 1 19 | #define COCOAPODS_VERSION_PATCH_MPTextReveal 0 20 | 21 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 5 | > "$RESOURCES_TO_COPY" 6 | 7 | install_resource() 8 | { 9 | case $1 in 10 | *.storyboard) 11 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 12 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 13 | ;; 14 | *.xib) 15 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 16 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 17 | ;; 18 | *.framework) 19 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 20 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 21 | echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 22 | rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 23 | ;; 24 | *.xcdatamodel) 25 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" 26 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" 27 | ;; 28 | *.xcdatamodeld) 29 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" 30 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" 31 | ;; 32 | *.xcassets) 33 | ;; 34 | /*) 35 | echo "$1" 36 | echo "$1" >> "$RESOURCES_TO_COPY" 37 | ;; 38 | *) 39 | echo "${PODS_ROOT}/$1" 40 | echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" 41 | ;; 42 | esac 43 | } 44 | 45 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 46 | if [[ "${ACTION}" == "install" ]]; then 47 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 48 | fi 49 | rm -f "$RESOURCES_TO_COPY" 50 | 51 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ `xcrun --find actool` ] && [ `find . -name '*.xcassets' | wc -l` -ne 0 ] 52 | then 53 | case "${TARGETED_DEVICE_FAMILY}" in 54 | 1,2) 55 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 56 | ;; 57 | 1) 58 | TARGET_DEVICE_ARGS="--target-device iphone" 59 | ;; 60 | 2) 61 | TARGET_DEVICE_ARGS="--target-device ipad" 62 | ;; 63 | *) 64 | TARGET_DEVICE_ARGS="--target-device mac" 65 | ;; 66 | esac 67 | find "${PWD}" -name "*.xcassets" -print0 | xargs -0 actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 68 | fi 69 | -------------------------------------------------------------------------------- /Example/Pods/Pods-MPParallaxCollection.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/MPParallaxCollection" "${PODS_ROOT}/Headers/MPTextReveal" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers" -isystem "${PODS_ROOT}/Headers/MPParallaxCollection" -isystem "${PODS_ROOT}/Headers/MPTextReveal" 4 | OTHER_LDFLAGS = -ObjC 5 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-Expecta-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-Tests-Expecta.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/BuildHeaders" "${PODS_ROOT}/BuildHeaders/Expecta" "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/Expecta" "${PODS_ROOT}/Headers/MPParallaxCollection" "${PODS_ROOT}/Headers/MPTextReveal" "${PODS_ROOT}/Headers/Specta" 4 | OTHER_LDFLAGS = -ObjC ${PODS_TESTS_EXPECTA_OTHER_LDFLAGS} 5 | PODS_ROOT = ${SRCROOT} -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-Expecta-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Tests_Expecta : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Tests_Expecta 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-Expecta-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-Tests-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-Expecta.xcconfig: -------------------------------------------------------------------------------- 1 | PODS_TESTS_EXPECTA_OTHER_LDFLAGS = -framework Foundation -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-MPParallaxCollection-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-Tests-MPParallaxCollection.xcconfig" 2 | GCC_PREPROCESSOR_DEFINITIONS = COCOAPODS=1 3 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/BuildHeaders" "${PODS_ROOT}/BuildHeaders/MPParallaxCollection" "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/MPParallaxCollection" "${PODS_ROOT}/Headers/MPTextReveal" 4 | OTHER_LDFLAGS = -ObjC 5 | PODS_ROOT = ${SRCROOT} -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-MPParallaxCollection-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Tests_MPParallaxCollection : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Tests_MPParallaxCollection 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-MPParallaxCollection-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-Tests-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-MPParallaxCollection.xcconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/Example/Pods/Pods-Tests-MPParallaxCollection.xcconfig -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-Specta-Private.xcconfig: -------------------------------------------------------------------------------- 1 | #include "Pods-Tests-Specta.xcconfig" 2 | FRAMEWORK_SEARCH_PATHS = ${PODS_TESTS_SPECTA_FRAMEWORK_SEARCH_PATHS} 3 | GCC_PREPROCESSOR_DEFINITIONS = COCOAPODS=1 4 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/BuildHeaders" "${PODS_ROOT}/BuildHeaders/Specta" "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/Expecta" "${PODS_ROOT}/Headers/MPParallaxCollection" "${PODS_ROOT}/Headers/MPTextReveal" "${PODS_ROOT}/Headers/Specta" 5 | OTHER_LDFLAGS = -ObjC ${PODS_TESTS_SPECTA_OTHER_LDFLAGS} 6 | PODS_ROOT = ${SRCROOT} -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-Specta-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Tests_Specta : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Tests_Specta 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-Specta-prefix.pch: -------------------------------------------------------------------------------- 1 | #ifdef __OBJC__ 2 | #import 3 | #endif 4 | 5 | #import "Pods-Tests-environment.h" 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-Specta.xcconfig: -------------------------------------------------------------------------------- 1 | PODS_TESTS_SPECTA_FRAMEWORK_SEARCH_PATHS = $(inherited) "$(SDKROOT)/Developer/Library/Frameworks" "$(DEVELOPER_LIBRARY_DIR)/Frameworks" 2 | PODS_TESTS_SPECTA_OTHER_LDFLAGS = -framework Foundation -framework XCTest -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-acknowledgements.markdown: -------------------------------------------------------------------------------- 1 | # Acknowledgements 2 | This application makes use of the following third party libraries: 3 | 4 | ## MPParallaxCollection 5 | 6 | Copyright (c) Alex Manzella. 7 | All rights reserved. 8 | 9 | Redistribution and use in source and binary forms, with or without modification, 10 | are permitted provided that the following conditions are met: 11 | 12 | 1. Redistributions of source code must retain the above copyright notice, 13 | this list of conditions and the following disclaimer. 14 | 15 | 2. Redistributions in binary form must reproduce the above copyright 16 | notice, this list of conditions and the following disclaimer in the 17 | documentation and/or other materials provided with the distribution. 18 | 19 | 3. Neither the name of Alex Manzella nor the names of its contributors may be used 20 | to endorse or promote products derived from this software without 21 | specific prior written permission. 22 | 23 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 24 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 25 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 26 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 27 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 28 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 29 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 30 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 31 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 32 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 33 | 34 | Generated by CocoaPods - http://cocoapods.org 35 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-acknowledgements.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | PreferenceSpecifiers 6 | 7 | 8 | FooterText 9 | This application makes use of the following third party libraries: 10 | Title 11 | Acknowledgements 12 | Type 13 | PSGroupSpecifier 14 | 15 | 16 | FooterText 17 | Copyright (c) Alex Manzella. 18 | All rights reserved. 19 | 20 | Redistribution and use in source and binary forms, with or without modification, 21 | are permitted provided that the following conditions are met: 22 | 23 | 1. Redistributions of source code must retain the above copyright notice, 24 | this list of conditions and the following disclaimer. 25 | 26 | 2. Redistributions in binary form must reproduce the above copyright 27 | notice, this list of conditions and the following disclaimer in the 28 | documentation and/or other materials provided with the distribution. 29 | 30 | 3. Neither the name of Alex Manzella nor the names of its contributors may be used 31 | to endorse or promote products derived from this software without 32 | specific prior written permission. 33 | 34 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 35 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 36 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 37 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 38 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 39 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 40 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 41 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 42 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 43 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 44 | 45 | Title 46 | MPParallaxCollection 47 | Type 48 | PSGroupSpecifier 49 | 50 | 51 | FooterText 52 | Generated by CocoaPods - http://cocoapods.org 53 | Title 54 | 55 | Type 56 | PSGroupSpecifier 57 | 58 | 59 | StringsTable 60 | Acknowledgements 61 | Title 62 | Acknowledgements 63 | 64 | 65 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-dummy.m: -------------------------------------------------------------------------------- 1 | #import 2 | @interface PodsDummy_Pods_Tests : NSObject 3 | @end 4 | @implementation PodsDummy_Pods_Tests 5 | @end 6 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-environment.h: -------------------------------------------------------------------------------- 1 | 2 | // To check if a library is compiled with CocoaPods you 3 | // can use the `COCOAPODS` macro definition which is 4 | // defined in the xcconfigs so it is available in 5 | // headers also when they are imported in the client 6 | // project. 7 | 8 | 9 | // MPParallaxCollection 10 | #define COCOAPODS_POD_AVAILABLE_MPParallaxCollection 11 | #define COCOAPODS_VERSION_MAJOR_MPParallaxCollection 0 12 | #define COCOAPODS_VERSION_MINOR_MPParallaxCollection 1 13 | #define COCOAPODS_VERSION_PATCH_MPParallaxCollection 0 14 | 15 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests-resources.sh: -------------------------------------------------------------------------------- 1 | #!/bin/sh 2 | set -e 3 | 4 | RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt 5 | > "$RESOURCES_TO_COPY" 6 | 7 | install_resource() 8 | { 9 | case $1 in 10 | *.storyboard) 11 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 12 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .storyboard`.storyboardc" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 13 | ;; 14 | *.xib) 15 | echo "ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile ${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib ${PODS_ROOT}/$1 --sdk ${SDKROOT}" 16 | ibtool --reference-external-strings-file --errors --warnings --notices --output-format human-readable-text --compile "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$1\" .xib`.nib" "${PODS_ROOT}/$1" --sdk "${SDKROOT}" 17 | ;; 18 | *.framework) 19 | echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 20 | mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 21 | echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 22 | rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" 23 | ;; 24 | *.xcdatamodel) 25 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" 26 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" 27 | ;; 28 | *.xcdatamodeld) 29 | echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" 30 | xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" 31 | ;; 32 | *.xcassets) 33 | ;; 34 | /*) 35 | echo "$1" 36 | echo "$1" >> "$RESOURCES_TO_COPY" 37 | ;; 38 | *) 39 | echo "${PODS_ROOT}/$1" 40 | echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" 41 | ;; 42 | esac 43 | } 44 | 45 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 46 | if [[ "${ACTION}" == "install" ]]; then 47 | rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 48 | fi 49 | rm -f "$RESOURCES_TO_COPY" 50 | 51 | if [[ -n "${WRAPPER_EXTENSION}" ]] && [ `xcrun --find actool` ] && [ `find . -name '*.xcassets' | wc -l` -ne 0 ] 52 | then 53 | case "${TARGETED_DEVICE_FAMILY}" in 54 | 1,2) 55 | TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" 56 | ;; 57 | 1) 58 | TARGET_DEVICE_ARGS="--target-device iphone" 59 | ;; 60 | 2) 61 | TARGET_DEVICE_ARGS="--target-device ipad" 62 | ;; 63 | *) 64 | TARGET_DEVICE_ARGS="--target-device mac" 65 | ;; 66 | esac 67 | find "${PWD}" -name "*.xcassets" -print0 | xargs -0 actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${IPHONEOS_DEPLOYMENT_TARGET}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" 68 | fi 69 | -------------------------------------------------------------------------------- /Example/Pods/Pods-Tests.xcconfig: -------------------------------------------------------------------------------- 1 | GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 2 | HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers" "${PODS_ROOT}/Headers/MPParallaxCollection" "${PODS_ROOT}/Headers/MPTextReveal" 3 | OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers" -isystem "${PODS_ROOT}/Headers/MPParallaxCollection" -isystem "${PODS_ROOT}/Headers/MPTextReveal" 4 | OTHER_LDFLAGS = -ObjC 5 | PODS_ROOT = ${SRCROOT}/Pods -------------------------------------------------------------------------------- /Example/Pods/Pods.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | archiveVersion 6 | 1 7 | classes 8 | 9 | objectVersion 10 | 46 11 | objects 12 | 13 | 059FB77E6B2646BBACB7CA63 14 | 15 | includeInIndex 16 | 1 17 | isa 18 | PBXFileReference 19 | lastKnownFileType 20 | sourcecode.c.h 21 | path 22 | Pods-Tests-MPParallaxCollection-prefix.pch 23 | sourceTree 24 | <group> 25 | 26 | 0752555D66804EFCA71C5A1C 27 | 28 | buildActionMask 29 | 2147483647 30 | files 31 | 32 | 0CCCDB0CA01B4363861FB972 33 | B5B1665643424E89954E5DA2 34 | 9951F18C3F21411E89FCA0CB 35 | 36 | isa 37 | PBXFrameworksBuildPhase 38 | runOnlyForDeploymentPostprocessing 39 | 0 40 | 41 | 0865D881922343639C059BAE 42 | 43 | isa 44 | PBXTargetDependency 45 | target 46 | 8F6D25671F964B8BB0D479E5 47 | targetProxy 48 | 7DEAB9CC24A248B3B23DF7E9 49 | 50 | 0A0AC516FC624C5285CC6959 51 | 52 | buildConfigurations 53 | 54 | 0CE1A150FCE848FB89B0DAF5 55 | 2B00FD467E3C4151AF47E394 56 | 57 | defaultConfigurationIsVisible 58 | 0 59 | defaultConfigurationName 60 | Release 61 | isa 62 | XCConfigurationList 63 | 64 | 0A793CD1EF244D9F94E8DAD3 65 | 66 | containerPortal 67 | 7609A434445C4702BD36EA31 68 | isa 69 | PBXContainerItemProxy 70 | proxyType 71 | 1 72 | remoteGlobalIDString 73 | 9A427C93E27D429AB7B5A9D1 74 | remoteInfo 75 | Pods-MPParallaxCollection-MPTextReveal 76 | 77 | 0CCCDB0CA01B4363861FB972 78 | 79 | fileRef 80 | BDB50B4EA5D14FF8BB9755C6 81 | isa 82 | PBXBuildFile 83 | 84 | 0CE1A150FCE848FB89B0DAF5 85 | 86 | baseConfigurationReference 87 | 0DF0419F4DC94276B8578C6F 88 | buildSettings 89 | 90 | ALWAYS_SEARCH_USER_PATHS 91 | NO 92 | COPY_PHASE_STRIP 93 | NO 94 | DSTROOT 95 | /tmp/xcodeproj.dst 96 | GCC_C_LANGUAGE_STANDARD 97 | gnu99 98 | GCC_DYNAMIC_NO_PIC 99 | NO 100 | GCC_OPTIMIZATION_LEVEL 101 | 0 102 | GCC_PRECOMPILE_PREFIX_HEADER 103 | YES 104 | GCC_PREPROCESSOR_DEFINITIONS 105 | 106 | DEBUG=1 107 | $(inherited) 108 | 109 | GCC_SYMBOLS_PRIVATE_EXTERN 110 | NO 111 | GCC_VERSION 112 | com.apple.compilers.llvm.clang.1_0 113 | INSTALL_PATH 114 | $(BUILT_PRODUCTS_DIR) 115 | IPHONEOS_DEPLOYMENT_TARGET 116 | 7.1 117 | OTHER_LDFLAGS 118 | 119 | PRODUCT_NAME 120 | $(TARGET_NAME) 121 | PUBLIC_HEADERS_FOLDER_PATH 122 | $(TARGET_NAME) 123 | SDKROOT 124 | iphoneos 125 | SKIP_INSTALL 126 | YES 127 | 128 | isa 129 | XCBuildConfiguration 130 | name 131 | Debug 132 | 133 | 0CE57BFC77B84CDD9A3892D5 134 | 135 | includeInIndex 136 | 1 137 | isa 138 | PBXFileReference 139 | lastKnownFileType 140 | text.script.sh 141 | path 142 | Pods-MPParallaxCollection-resources.sh 143 | sourceTree 144 | <group> 145 | 146 | 0DF0419F4DC94276B8578C6F 147 | 148 | includeInIndex 149 | 1 150 | isa 151 | PBXFileReference 152 | lastKnownFileType 153 | text.xcconfig 154 | path 155 | Pods-MPParallaxCollection.xcconfig 156 | sourceTree 157 | <group> 158 | 159 | 0E181CA66AC7444BAFFAA5A7 160 | 161 | includeInIndex 162 | 1 163 | isa 164 | PBXFileReference 165 | lastKnownFileType 166 | sourcecode.c.h 167 | path 168 | Pods-MPParallaxCollection-environment.h 169 | sourceTree 170 | <group> 171 | 172 | 0E5FED402B874D3197C4D83F 173 | 174 | explicitFileType 175 | archive.ar 176 | includeInIndex 177 | 0 178 | isa 179 | PBXFileReference 180 | path 181 | libPods-Tests.a 182 | sourceTree 183 | BUILT_PRODUCTS_DIR 184 | 185 | 0F6AFC782AE24366AEB98512 186 | 187 | children 188 | 189 | 8C0CE32E35574CA586BD6E3C 190 | 80FEE6EF6ED74F64B601A734 191 | D6351238DC6C44B1A39B955C 192 | 174971B6E4D843DE86B20619 193 | 191775ABB2B347BA8C66EA3C 194 | 98D75D484D594E5EBEA2342B 195 | 196 | isa 197 | PBXGroup 198 | name 199 | Pods-Tests 200 | sourceTree 201 | <group> 202 | 203 | 119AA2202F304AFEA2EB7749 204 | 205 | baseConfigurationReference 206 | 8C0CE32E35574CA586BD6E3C 207 | buildSettings 208 | 209 | ALWAYS_SEARCH_USER_PATHS 210 | NO 211 | COPY_PHASE_STRIP 212 | NO 213 | DSTROOT 214 | /tmp/xcodeproj.dst 215 | GCC_C_LANGUAGE_STANDARD 216 | gnu99 217 | GCC_DYNAMIC_NO_PIC 218 | NO 219 | GCC_OPTIMIZATION_LEVEL 220 | 0 221 | GCC_PRECOMPILE_PREFIX_HEADER 222 | YES 223 | GCC_PREPROCESSOR_DEFINITIONS 224 | 225 | DEBUG=1 226 | $(inherited) 227 | 228 | GCC_SYMBOLS_PRIVATE_EXTERN 229 | NO 230 | GCC_VERSION 231 | com.apple.compilers.llvm.clang.1_0 232 | INSTALL_PATH 233 | $(BUILT_PRODUCTS_DIR) 234 | IPHONEOS_DEPLOYMENT_TARGET 235 | 7.1 236 | OTHER_LDFLAGS 237 | 238 | PRODUCT_NAME 239 | $(TARGET_NAME) 240 | PUBLIC_HEADERS_FOLDER_PATH 241 | $(TARGET_NAME) 242 | SDKROOT 243 | iphoneos 244 | SKIP_INSTALL 245 | YES 246 | 247 | isa 248 | XCBuildConfiguration 249 | name 250 | Debug 251 | 252 | 12D1D8C60F8F4DCC9CFD9A8B 253 | 254 | buildActionMask 255 | 2147483647 256 | files 257 | 258 | 3BC81A3A573040BE94811A88 259 | 96BA3B85A2EF488382D14F2E 260 | 261 | isa 262 | PBXSourcesBuildPhase 263 | runOnlyForDeploymentPostprocessing 264 | 0 265 | 266 | 136DDFC7C58E449190034FC5 267 | 268 | children 269 | 270 | 3746D3D12D7A413CA6A171D3 271 | 272 | isa 273 | PBXGroup 274 | name 275 | Pods 276 | sourceTree 277 | <group> 278 | 279 | 174971B6E4D843DE86B20619 280 | 281 | includeInIndex 282 | 1 283 | isa 284 | PBXFileReference 285 | lastKnownFileType 286 | sourcecode.c.objc 287 | path 288 | Pods-Tests-dummy.m 289 | sourceTree 290 | <group> 291 | 292 | 191775ABB2B347BA8C66EA3C 293 | 294 | includeInIndex 295 | 1 296 | isa 297 | PBXFileReference 298 | lastKnownFileType 299 | sourcecode.c.h 300 | path 301 | Pods-Tests-environment.h 302 | sourceTree 303 | <group> 304 | 305 | 1EBE84C2020D42E08580A02A 306 | 307 | includeInIndex 308 | 1 309 | isa 310 | PBXFileReference 311 | lastKnownFileType 312 | sourcecode.c.objc 313 | path 314 | Pods-MPParallaxCollection-dummy.m 315 | sourceTree 316 | <group> 317 | 318 | 21C21E7B91544FC2BA07591B 319 | 320 | children 321 | 322 | 9F97C79B16214EFB9B37F8A1 323 | 8B7DB15B5806493BA59B9D2D 324 | DEBF1851B50047F58514E4CC 325 | 62B46B9A78BE41EC9EA0CB87 326 | 327 | isa 328 | PBXGroup 329 | name 330 | Support Files 331 | sourceTree 332 | SOURCE_ROOT 333 | 334 | 263B2CA581E64D38B664695E 335 | 336 | fileRef 337 | 54DA804D0C2B4FD1B4FDBBF2 338 | isa 339 | PBXBuildFile 340 | settings 341 | 342 | COMPILER_FLAGS 343 | -fobjc-arc 344 | 345 | 346 | 296C078AE0C242F4A34D1B3A 347 | 348 | children 349 | 350 | BDB50B4EA5D14FF8BB9755C6 351 | 352 | isa 353 | PBXGroup 354 | name 355 | iOS 356 | sourceTree 357 | <group> 358 | 359 | 29EBFC950E5B4E3F8749CD64 360 | 361 | baseConfigurationReference 362 | 57908DAC4A044A7D980C5C04 363 | buildSettings 364 | 365 | ALWAYS_SEARCH_USER_PATHS 366 | NO 367 | COPY_PHASE_STRIP 368 | YES 369 | DSTROOT 370 | /tmp/xcodeproj.dst 371 | GCC_C_LANGUAGE_STANDARD 372 | gnu99 373 | GCC_PRECOMPILE_PREFIX_HEADER 374 | YES 375 | GCC_PREFIX_HEADER 376 | Pods-MPParallaxCollection-MPParallaxCollection-prefix.pch 377 | GCC_VERSION 378 | com.apple.compilers.llvm.clang.1_0 379 | INSTALL_PATH 380 | $(BUILT_PRODUCTS_DIR) 381 | IPHONEOS_DEPLOYMENT_TARGET 382 | 7.1 383 | OTHER_CFLAGS 384 | 385 | -DNS_BLOCK_ASSERTIONS=1 386 | $(inherited) 387 | 388 | OTHER_CPLUSPLUSFLAGS 389 | 390 | -DNS_BLOCK_ASSERTIONS=1 391 | $(inherited) 392 | 393 | OTHER_LDFLAGS 394 | 395 | PRODUCT_NAME 396 | $(TARGET_NAME) 397 | PUBLIC_HEADERS_FOLDER_PATH 398 | $(TARGET_NAME) 399 | SDKROOT 400 | iphoneos 401 | SKIP_INSTALL 402 | YES 403 | VALIDATE_PRODUCT 404 | YES 405 | 406 | isa 407 | XCBuildConfiguration 408 | name 409 | Release 410 | 411 | 2B00FD467E3C4151AF47E394 412 | 413 | baseConfigurationReference 414 | 0DF0419F4DC94276B8578C6F 415 | buildSettings 416 | 417 | ALWAYS_SEARCH_USER_PATHS 418 | NO 419 | COPY_PHASE_STRIP 420 | YES 421 | DSTROOT 422 | /tmp/xcodeproj.dst 423 | GCC_C_LANGUAGE_STANDARD 424 | gnu99 425 | GCC_PRECOMPILE_PREFIX_HEADER 426 | YES 427 | GCC_VERSION 428 | com.apple.compilers.llvm.clang.1_0 429 | INSTALL_PATH 430 | $(BUILT_PRODUCTS_DIR) 431 | IPHONEOS_DEPLOYMENT_TARGET 432 | 7.1 433 | OTHER_CFLAGS 434 | 435 | -DNS_BLOCK_ASSERTIONS=1 436 | $(inherited) 437 | 438 | OTHER_CPLUSPLUSFLAGS 439 | 440 | -DNS_BLOCK_ASSERTIONS=1 441 | $(inherited) 442 | 443 | OTHER_LDFLAGS 444 | 445 | PRODUCT_NAME 446 | $(TARGET_NAME) 447 | PUBLIC_HEADERS_FOLDER_PATH 448 | $(TARGET_NAME) 449 | SDKROOT 450 | iphoneos 451 | SKIP_INSTALL 452 | YES 453 | VALIDATE_PRODUCT 454 | YES 455 | 456 | isa 457 | XCBuildConfiguration 458 | name 459 | Release 460 | 461 | 2C1BA4A7B75C47419DC58D0E 462 | 463 | includeInIndex 464 | 1 465 | isa 466 | PBXFileReference 467 | lastKnownFileType 468 | text.plist.xml 469 | path 470 | Pods-MPParallaxCollection-acknowledgements.plist 471 | sourceTree 472 | <group> 473 | 474 | 2CA1BD5139964CB9B80B2E7F 475 | 476 | includeInIndex 477 | 1 478 | isa 479 | PBXFileReference 480 | lastKnownFileType 481 | sourcecode.c.h 482 | path 483 | Pods-MPParallaxCollection-MPParallaxCollection-prefix.pch 484 | sourceTree 485 | <group> 486 | 487 | 2E874591643C41B6AD53D406 488 | 489 | fileRef 490 | 3D01493AC1724733A67CC46C 491 | isa 492 | PBXBuildFile 493 | 494 | 305C70D8BD3749C4BC45A2CB 495 | 496 | includeInIndex 497 | 1 498 | isa 499 | PBXFileReference 500 | lastKnownFileType 501 | sourcecode.c.objc 502 | name 503 | MPTextReavealLabel.m 504 | path 505 | Classes/MPTextReavealLabel.m 506 | sourceTree 507 | <group> 508 | 509 | 307DF783EA9C459BB43A3A8A 510 | 511 | buildActionMask 512 | 2147483647 513 | files 514 | 515 | 263B2CA581E64D38B664695E 516 | 863837A4EF2B45F39CE4F0EF 517 | A6177F3F0A5243C987071183 518 | 519 | isa 520 | PBXSourcesBuildPhase 521 | runOnlyForDeploymentPostprocessing 522 | 0 523 | 524 | 3746D3D12D7A413CA6A171D3 525 | 526 | children 527 | 528 | 8DAB20D1F6AE42F583AE4B67 529 | 305C70D8BD3749C4BC45A2CB 530 | 21C21E7B91544FC2BA07591B 531 | 532 | isa 533 | PBXGroup 534 | name 535 | MPTextReveal 536 | path 537 | MPTextReveal 538 | sourceTree 539 | <group> 540 | 541 | 3932DE21073746F9904C3358 542 | 543 | buildActionMask 544 | 2147483647 545 | files 546 | 547 | B752C4A665B24F84B8864572 548 | 549 | isa 550 | PBXSourcesBuildPhase 551 | runOnlyForDeploymentPostprocessing 552 | 0 553 | 554 | 3BC81A3A573040BE94811A88 555 | 556 | fileRef 557 | 305C70D8BD3749C4BC45A2CB 558 | isa 559 | PBXBuildFile 560 | settings 561 | 562 | COMPILER_FLAGS 563 | -fobjc-arc 564 | 565 | 566 | 3D01493AC1724733A67CC46C 567 | 568 | includeInIndex 569 | 1 570 | isa 571 | PBXFileReference 572 | lastKnownFileType 573 | sourcecode.c.objc 574 | path 575 | Pods-MPParallaxCollection-MPParallaxCollection-dummy.m 576 | sourceTree 577 | <group> 578 | 579 | 3FEF512545B8494CB9284697 580 | 581 | fileRef 582 | BDB50B4EA5D14FF8BB9755C6 583 | isa 584 | PBXBuildFile 585 | 586 | 458FFB61576342D7A6B5E9BB 587 | 588 | children 589 | 590 | 68E954C5E11A4414824E9AD1 591 | 592 | isa 593 | PBXGroup 594 | name 595 | Development Pods 596 | sourceTree 597 | <group> 598 | 599 | 4601A5BB7A354EFCB81D1038 600 | 601 | includeInIndex 602 | 1 603 | isa 604 | PBXFileReference 605 | lastKnownFileType 606 | text 607 | path 608 | Pods-MPParallaxCollection-acknowledgements.markdown 609 | sourceTree 610 | <group> 611 | 612 | 4B0C1D58781047EDB8B2692A 613 | 614 | includeInIndex 615 | 1 616 | isa 617 | PBXFileReference 618 | lastKnownFileType 619 | sourcecode.c.objc 620 | path 621 | Pods-Tests-MPParallaxCollection-dummy.m 622 | sourceTree 623 | <group> 624 | 625 | 4B58F452AB3A4078A5242D13 626 | 627 | children 628 | 629 | C138DE05DC4F449CBF590ED5 630 | B4838060186C459FA078F980 631 | FE942EF9A3784AE8B102C0A9 632 | 0E5FED402B874D3197C4D83F 633 | AB1E632F4013449F840E6AA6 634 | 635 | isa 636 | PBXGroup 637 | name 638 | Products 639 | sourceTree 640 | <group> 641 | 642 | 4C1F132DCF03469EB4755D15 643 | 644 | fileRef 645 | 93B2828737B845198FD2EB75 646 | isa 647 | PBXBuildFile 648 | 649 | 54DA804D0C2B4FD1B4FDBBF2 650 | 651 | includeInIndex 652 | 1 653 | isa 654 | PBXFileReference 655 | lastKnownFileType 656 | sourcecode.c.objc 657 | name 658 | MPParallaxCollectionViewCell.m 659 | path 660 | Classes/MPParallaxCollectionViewCell.m 661 | sourceTree 662 | <group> 663 | 664 | 573D81A0D98E4F80BE8FA05C 665 | 666 | fileRef 667 | BDB50B4EA5D14FF8BB9755C6 668 | isa 669 | PBXBuildFile 670 | 671 | 57908DAC4A044A7D980C5C04 672 | 673 | includeInIndex 674 | 1 675 | isa 676 | PBXFileReference 677 | lastKnownFileType 678 | text.xcconfig 679 | path 680 | Pods-MPParallaxCollection-MPParallaxCollection-Private.xcconfig 681 | sourceTree 682 | <group> 683 | 684 | 57DEA80BA8194E578432156E 685 | 686 | buildActionMask 687 | 2147483647 688 | files 689 | 690 | 5F1E950925FF42DAAC104FA9 691 | 692 | isa 693 | PBXFrameworksBuildPhase 694 | runOnlyForDeploymentPostprocessing 695 | 0 696 | 697 | 5AAFC2F291704E93A2DD0A1C 698 | 699 | children 700 | 701 | 9D20C48D8DBC4ACF923703FB 702 | 57908DAC4A044A7D980C5C04 703 | 3D01493AC1724733A67CC46C 704 | 2CA1BD5139964CB9B80B2E7F 705 | 8846026E237A417BAB9A6EDD 706 | AE427894CBF445099A264CB1 707 | 4B0C1D58781047EDB8B2692A 708 | 059FB77E6B2646BBACB7CA63 709 | 710 | isa 711 | PBXGroup 712 | name 713 | Support Files 714 | sourceTree 715 | SOURCE_ROOT 716 | 717 | 5F1E950925FF42DAAC104FA9 718 | 719 | fileRef 720 | BDB50B4EA5D14FF8BB9755C6 721 | isa 722 | PBXBuildFile 723 | 724 | 5FD684B0CD574884ACDFE437 725 | 726 | includeInIndex 727 | 1 728 | isa 729 | PBXFileReference 730 | lastKnownFileType 731 | sourcecode.c.objc 732 | name 733 | MPParallaxLayout.m 734 | path 735 | Classes/MPParallaxLayout.m 736 | sourceTree 737 | <group> 738 | 739 | 62B46B9A78BE41EC9EA0CB87 740 | 741 | includeInIndex 742 | 1 743 | isa 744 | PBXFileReference 745 | lastKnownFileType 746 | sourcecode.c.h 747 | path 748 | Pods-MPParallaxCollection-MPTextReveal-prefix.pch 749 | sourceTree 750 | <group> 751 | 752 | 680455E0169541F790A70184 753 | 754 | children 755 | 756 | 0DF0419F4DC94276B8578C6F 757 | 4601A5BB7A354EFCB81D1038 758 | 2C1BA4A7B75C47419DC58D0E 759 | 1EBE84C2020D42E08580A02A 760 | 0E181CA66AC7444BAFFAA5A7 761 | 0CE57BFC77B84CDD9A3892D5 762 | 763 | isa 764 | PBXGroup 765 | name 766 | Pods-MPParallaxCollection 767 | sourceTree 768 | <group> 769 | 770 | 685EF592B5CB4295A083F412 771 | 772 | buildActionMask 773 | 2147483647 774 | files 775 | 776 | 83D82A40A317402A92146C2E 777 | 778 | isa 779 | PBXSourcesBuildPhase 780 | runOnlyForDeploymentPostprocessing 781 | 0 782 | 783 | 68E954C5E11A4414824E9AD1 784 | 785 | children 786 | 787 | DE0AC17B93EB4B6AB37DE438 788 | 54DA804D0C2B4FD1B4FDBBF2 789 | 93B2828737B845198FD2EB75 790 | 5FD684B0CD574884ACDFE437 791 | 5AAFC2F291704E93A2DD0A1C 792 | 793 | isa 794 | PBXGroup 795 | name 796 | MPParallaxCollection 797 | path 798 | ../.. 799 | sourceTree 800 | <group> 801 | 802 | 6AC9C0120D6944FFA2C68DAA 803 | 804 | isa 805 | PBXTargetDependency 806 | target 807 | 9A427C93E27D429AB7B5A9D1 808 | targetProxy 809 | 0A793CD1EF244D9F94E8DAD3 810 | 811 | 750A58AC309A4240A5F5C03F 812 | 813 | baseConfigurationReference 814 | 8C0CE32E35574CA586BD6E3C 815 | buildSettings 816 | 817 | ALWAYS_SEARCH_USER_PATHS 818 | NO 819 | COPY_PHASE_STRIP 820 | YES 821 | DSTROOT 822 | /tmp/xcodeproj.dst 823 | GCC_C_LANGUAGE_STANDARD 824 | gnu99 825 | GCC_PRECOMPILE_PREFIX_HEADER 826 | YES 827 | GCC_VERSION 828 | com.apple.compilers.llvm.clang.1_0 829 | INSTALL_PATH 830 | $(BUILT_PRODUCTS_DIR) 831 | IPHONEOS_DEPLOYMENT_TARGET 832 | 7.1 833 | OTHER_CFLAGS 834 | 835 | -DNS_BLOCK_ASSERTIONS=1 836 | $(inherited) 837 | 838 | OTHER_CPLUSPLUSFLAGS 839 | 840 | -DNS_BLOCK_ASSERTIONS=1 841 | $(inherited) 842 | 843 | OTHER_LDFLAGS 844 | 845 | PRODUCT_NAME 846 | $(TARGET_NAME) 847 | PUBLIC_HEADERS_FOLDER_PATH 848 | $(TARGET_NAME) 849 | SDKROOT 850 | iphoneos 851 | SKIP_INSTALL 852 | YES 853 | VALIDATE_PRODUCT 854 | YES 855 | 856 | isa 857 | XCBuildConfiguration 858 | name 859 | Release 860 | 861 | 7609A434445C4702BD36EA31 862 | 863 | attributes 864 | 865 | LastUpgradeCheck 866 | 0510 867 | 868 | buildConfigurationList 869 | AA6E3984084E4365969094EC 870 | compatibilityVersion 871 | Xcode 3.2 872 | developmentRegion 873 | English 874 | hasScannedForEncodings 875 | 0 876 | isa 877 | PBXProject 878 | knownRegions 879 | 880 | en 881 | 882 | mainGroup 883 | DBE290845AF949489F04F817 884 | productRefGroup 885 | 4B58F452AB3A4078A5242D13 886 | projectDirPath 887 | 888 | projectReferences 889 | 890 | projectRoot 891 | 892 | targets 893 | 894 | C1E922BCE36949139503D32F 895 | 8F6D25671F964B8BB0D479E5 896 | 9A427C93E27D429AB7B5A9D1 897 | 974A681D85FE4FCD9C27F70A 898 | C639D0433AF74916B3BEFD40 899 | 900 | 901 | 7D4CF93215DD4DFC9C2FCED3 902 | 903 | children 904 | 905 | 296C078AE0C242F4A34D1B3A 906 | 907 | isa 908 | PBXGroup 909 | name 910 | Frameworks 911 | sourceTree 912 | <group> 913 | 914 | 7DB00AF29E4345F58D7473B1 915 | 916 | baseConfigurationReference 917 | AE427894CBF445099A264CB1 918 | buildSettings 919 | 920 | ALWAYS_SEARCH_USER_PATHS 921 | NO 922 | COPY_PHASE_STRIP 923 | YES 924 | DSTROOT 925 | /tmp/xcodeproj.dst 926 | GCC_C_LANGUAGE_STANDARD 927 | gnu99 928 | GCC_PRECOMPILE_PREFIX_HEADER 929 | YES 930 | GCC_PREFIX_HEADER 931 | Pods-Tests-MPParallaxCollection-prefix.pch 932 | GCC_VERSION 933 | com.apple.compilers.llvm.clang.1_0 934 | INSTALL_PATH 935 | $(BUILT_PRODUCTS_DIR) 936 | IPHONEOS_DEPLOYMENT_TARGET 937 | 7.1 938 | OTHER_CFLAGS 939 | 940 | -DNS_BLOCK_ASSERTIONS=1 941 | $(inherited) 942 | 943 | OTHER_CPLUSPLUSFLAGS 944 | 945 | -DNS_BLOCK_ASSERTIONS=1 946 | $(inherited) 947 | 948 | OTHER_LDFLAGS 949 | 950 | PRODUCT_NAME 951 | $(TARGET_NAME) 952 | PUBLIC_HEADERS_FOLDER_PATH 953 | $(TARGET_NAME) 954 | SDKROOT 955 | iphoneos 956 | SKIP_INSTALL 957 | YES 958 | VALIDATE_PRODUCT 959 | YES 960 | 961 | isa 962 | XCBuildConfiguration 963 | name 964 | Release 965 | 966 | 7DEAB9CC24A248B3B23DF7E9 967 | 968 | containerPortal 969 | 7609A434445C4702BD36EA31 970 | isa 971 | PBXContainerItemProxy 972 | proxyType 973 | 1 974 | remoteGlobalIDString 975 | 8F6D25671F964B8BB0D479E5 976 | remoteInfo 977 | Pods-MPParallaxCollection-MPParallaxCollection 978 | 979 | 80FEE6EF6ED74F64B601A734 980 | 981 | includeInIndex 982 | 1 983 | isa 984 | PBXFileReference 985 | lastKnownFileType 986 | text 987 | path 988 | Pods-Tests-acknowledgements.markdown 989 | sourceTree 990 | <group> 991 | 992 | 8195C1B48B5C4692B0B85314 993 | 994 | buildActionMask 995 | 2147483647 996 | files 997 | 998 | B5226B813BA6458B8A0E45D1 999 | 1000 | isa 1001 | PBXFrameworksBuildPhase 1002 | runOnlyForDeploymentPostprocessing 1003 | 0 1004 | 1005 | 83D82A40A317402A92146C2E 1006 | 1007 | fileRef 1008 | 174971B6E4D843DE86B20619 1009 | isa 1010 | PBXBuildFile 1011 | 1012 | 863837A4EF2B45F39CE4F0EF 1013 | 1014 | fileRef 1015 | 5FD684B0CD574884ACDFE437 1016 | isa 1017 | PBXBuildFile 1018 | settings 1019 | 1020 | COMPILER_FLAGS 1021 | -fobjc-arc 1022 | 1023 | 1024 | 8846026E237A417BAB9A6EDD 1025 | 1026 | includeInIndex 1027 | 1 1028 | isa 1029 | PBXFileReference 1030 | lastKnownFileType 1031 | text.xcconfig 1032 | path 1033 | Pods-Tests-MPParallaxCollection.xcconfig 1034 | sourceTree 1035 | <group> 1036 | 1037 | 8B7DB15B5806493BA59B9D2D 1038 | 1039 | includeInIndex 1040 | 1 1041 | isa 1042 | PBXFileReference 1043 | lastKnownFileType 1044 | text.xcconfig 1045 | path 1046 | Pods-MPParallaxCollection-MPTextReveal-Private.xcconfig 1047 | sourceTree 1048 | <group> 1049 | 1050 | 8C0CE32E35574CA586BD6E3C 1051 | 1052 | includeInIndex 1053 | 1 1054 | isa 1055 | PBXFileReference 1056 | lastKnownFileType 1057 | text.xcconfig 1058 | path 1059 | Pods-Tests.xcconfig 1060 | sourceTree 1061 | <group> 1062 | 1063 | 8D4A797F03104776BC40C91C 1064 | 1065 | buildConfigurations 1066 | 1067 | B221E9B9D9414ED0918CFFE7 1068 | 29EBFC950E5B4E3F8749CD64 1069 | 1070 | defaultConfigurationIsVisible 1071 | 0 1072 | defaultConfigurationName 1073 | Release 1074 | isa 1075 | XCConfigurationList 1076 | 1077 | 8DAB20D1F6AE42F583AE4B67 1078 | 1079 | includeInIndex 1080 | 1 1081 | isa 1082 | PBXFileReference 1083 | lastKnownFileType 1084 | sourcecode.c.h 1085 | name 1086 | MPTextReavealLabel.h 1087 | path 1088 | Classes/MPTextReavealLabel.h 1089 | sourceTree 1090 | <group> 1091 | 1092 | 8F6D25671F964B8BB0D479E5 1093 | 1094 | buildConfigurationList 1095 | 8D4A797F03104776BC40C91C 1096 | buildPhases 1097 | 1098 | CE5D16DEC0A6496DAA4F1280 1099 | 57DEA80BA8194E578432156E 1100 | B4871B3249B448D2A89D7FEB 1101 | 1102 | buildRules 1103 | 1104 | dependencies 1105 | 1106 | isa 1107 | PBXNativeTarget 1108 | name 1109 | Pods-MPParallaxCollection-MPParallaxCollection 1110 | productName 1111 | Pods-MPParallaxCollection-MPParallaxCollection 1112 | productReference 1113 | B4838060186C459FA078F980 1114 | productType 1115 | com.apple.product-type.library.static 1116 | 1117 | 900EB2DA59BC4A5FA2FC8A95 1118 | 1119 | baseConfigurationReference 1120 | AE427894CBF445099A264CB1 1121 | buildSettings 1122 | 1123 | ALWAYS_SEARCH_USER_PATHS 1124 | NO 1125 | COPY_PHASE_STRIP 1126 | NO 1127 | DSTROOT 1128 | /tmp/xcodeproj.dst 1129 | GCC_C_LANGUAGE_STANDARD 1130 | gnu99 1131 | GCC_DYNAMIC_NO_PIC 1132 | NO 1133 | GCC_OPTIMIZATION_LEVEL 1134 | 0 1135 | GCC_PRECOMPILE_PREFIX_HEADER 1136 | YES 1137 | GCC_PREFIX_HEADER 1138 | Pods-Tests-MPParallaxCollection-prefix.pch 1139 | GCC_PREPROCESSOR_DEFINITIONS 1140 | 1141 | DEBUG=1 1142 | $(inherited) 1143 | 1144 | GCC_SYMBOLS_PRIVATE_EXTERN 1145 | NO 1146 | GCC_VERSION 1147 | com.apple.compilers.llvm.clang.1_0 1148 | INSTALL_PATH 1149 | $(BUILT_PRODUCTS_DIR) 1150 | IPHONEOS_DEPLOYMENT_TARGET 1151 | 7.1 1152 | OTHER_LDFLAGS 1153 | 1154 | PRODUCT_NAME 1155 | $(TARGET_NAME) 1156 | PUBLIC_HEADERS_FOLDER_PATH 1157 | $(TARGET_NAME) 1158 | SDKROOT 1159 | iphoneos 1160 | SKIP_INSTALL 1161 | YES 1162 | 1163 | isa 1164 | XCBuildConfiguration 1165 | name 1166 | Debug 1167 | 1168 | 93B2828737B845198FD2EB75 1169 | 1170 | includeInIndex 1171 | 1 1172 | isa 1173 | PBXFileReference 1174 | lastKnownFileType 1175 | sourcecode.c.h 1176 | name 1177 | MPParallaxLayout.h 1178 | path 1179 | Classes/MPParallaxLayout.h 1180 | sourceTree 1181 | <group> 1182 | 1183 | 96BA3B85A2EF488382D14F2E 1184 | 1185 | fileRef 1186 | DEBF1851B50047F58514E4CC 1187 | isa 1188 | PBXBuildFile 1189 | 1190 | 974A681D85FE4FCD9C27F70A 1191 | 1192 | buildConfigurationList 1193 | EF3FAE95004643A3BDF53A6C 1194 | buildPhases 1195 | 1196 | 685EF592B5CB4295A083F412 1197 | D4ED77048A8D4DB79CB107E5 1198 | 1199 | buildRules 1200 | 1201 | dependencies 1202 | 1203 | BC40806B0B93455D9E708FF3 1204 | 1205 | isa 1206 | PBXNativeTarget 1207 | name 1208 | Pods-Tests 1209 | productName 1210 | Pods-Tests 1211 | productReference 1212 | 0E5FED402B874D3197C4D83F 1213 | productType 1214 | com.apple.product-type.library.static 1215 | 1216 | 9807A50C50B74F309CBC3E08 1217 | 1218 | includeInIndex 1219 | 1 1220 | isa 1221 | PBXFileReference 1222 | lastKnownFileType 1223 | text 1224 | name 1225 | Podfile 1226 | path 1227 | ../Podfile 1228 | sourceTree 1229 | SOURCE_ROOT 1230 | xcLanguageSpecificationIdentifier 1231 | xcode.lang.ruby 1232 | 1233 | 98D75D484D594E5EBEA2342B 1234 | 1235 | includeInIndex 1236 | 1 1237 | isa 1238 | PBXFileReference 1239 | lastKnownFileType 1240 | text.script.sh 1241 | path 1242 | Pods-Tests-resources.sh 1243 | sourceTree 1244 | <group> 1245 | 1246 | 9951F18C3F21411E89FCA0CB 1247 | 1248 | fileRef 1249 | FE942EF9A3784AE8B102C0A9 1250 | isa 1251 | PBXBuildFile 1252 | 1253 | 9A427C93E27D429AB7B5A9D1 1254 | 1255 | buildConfigurationList 1256 | F681117C1C5B4203B3704DD0 1257 | buildPhases 1258 | 1259 | 12D1D8C60F8F4DCC9CFD9A8B 1260 | 8195C1B48B5C4692B0B85314 1261 | FA1D23D4E3AE4D0A8EB6B90E 1262 | 1263 | buildRules 1264 | 1265 | dependencies 1266 | 1267 | isa 1268 | PBXNativeTarget 1269 | name 1270 | Pods-MPParallaxCollection-MPTextReveal 1271 | productName 1272 | Pods-MPParallaxCollection-MPTextReveal 1273 | productReference 1274 | FE942EF9A3784AE8B102C0A9 1275 | productType 1276 | com.apple.product-type.library.static 1277 | 1278 | 9D20C48D8DBC4ACF923703FB 1279 | 1280 | includeInIndex 1281 | 1 1282 | isa 1283 | PBXFileReference 1284 | lastKnownFileType 1285 | text.xcconfig 1286 | path 1287 | Pods-MPParallaxCollection-MPParallaxCollection.xcconfig 1288 | sourceTree 1289 | <group> 1290 | 1291 | 9F97C79B16214EFB9B37F8A1 1292 | 1293 | includeInIndex 1294 | 1 1295 | isa 1296 | PBXFileReference 1297 | lastKnownFileType 1298 | text.xcconfig 1299 | path 1300 | Pods-MPParallaxCollection-MPTextReveal.xcconfig 1301 | sourceTree 1302 | <group> 1303 | 1304 | A6177F3F0A5243C987071183 1305 | 1306 | fileRef 1307 | 4B0C1D58781047EDB8B2692A 1308 | isa 1309 | PBXBuildFile 1310 | 1311 | AA6E3984084E4365969094EC 1312 | 1313 | buildConfigurations 1314 | 1315 | F909F974CD574356BC938E1E 1316 | E4B20BACBE6949A3AE7C016B 1317 | 1318 | defaultConfigurationIsVisible 1319 | 0 1320 | defaultConfigurationName 1321 | Release 1322 | isa 1323 | XCConfigurationList 1324 | 1325 | AB1E632F4013449F840E6AA6 1326 | 1327 | explicitFileType 1328 | archive.ar 1329 | includeInIndex 1330 | 0 1331 | isa 1332 | PBXFileReference 1333 | path 1334 | libPods-Tests-MPParallaxCollection.a 1335 | sourceTree 1336 | BUILT_PRODUCTS_DIR 1337 | 1338 | AE427894CBF445099A264CB1 1339 | 1340 | includeInIndex 1341 | 1 1342 | isa 1343 | PBXFileReference 1344 | lastKnownFileType 1345 | text.xcconfig 1346 | path 1347 | Pods-Tests-MPParallaxCollection-Private.xcconfig 1348 | sourceTree 1349 | <group> 1350 | 1351 | B221E9B9D9414ED0918CFFE7 1352 | 1353 | baseConfigurationReference 1354 | 57908DAC4A044A7D980C5C04 1355 | buildSettings 1356 | 1357 | ALWAYS_SEARCH_USER_PATHS 1358 | NO 1359 | COPY_PHASE_STRIP 1360 | NO 1361 | DSTROOT 1362 | /tmp/xcodeproj.dst 1363 | GCC_C_LANGUAGE_STANDARD 1364 | gnu99 1365 | GCC_DYNAMIC_NO_PIC 1366 | NO 1367 | GCC_OPTIMIZATION_LEVEL 1368 | 0 1369 | GCC_PRECOMPILE_PREFIX_HEADER 1370 | YES 1371 | GCC_PREFIX_HEADER 1372 | Pods-MPParallaxCollection-MPParallaxCollection-prefix.pch 1373 | GCC_PREPROCESSOR_DEFINITIONS 1374 | 1375 | DEBUG=1 1376 | $(inherited) 1377 | 1378 | GCC_SYMBOLS_PRIVATE_EXTERN 1379 | NO 1380 | GCC_VERSION 1381 | com.apple.compilers.llvm.clang.1_0 1382 | INSTALL_PATH 1383 | $(BUILT_PRODUCTS_DIR) 1384 | IPHONEOS_DEPLOYMENT_TARGET 1385 | 7.1 1386 | OTHER_LDFLAGS 1387 | 1388 | PRODUCT_NAME 1389 | $(TARGET_NAME) 1390 | PUBLIC_HEADERS_FOLDER_PATH 1391 | $(TARGET_NAME) 1392 | SDKROOT 1393 | iphoneos 1394 | SKIP_INSTALL 1395 | YES 1396 | 1397 | isa 1398 | XCBuildConfiguration 1399 | name 1400 | Debug 1401 | 1402 | B4838060186C459FA078F980 1403 | 1404 | explicitFileType 1405 | archive.ar 1406 | includeInIndex 1407 | 0 1408 | isa 1409 | PBXFileReference 1410 | path 1411 | libPods-MPParallaxCollection-MPParallaxCollection.a 1412 | sourceTree 1413 | BUILT_PRODUCTS_DIR 1414 | 1415 | B4871B3249B448D2A89D7FEB 1416 | 1417 | buildActionMask 1418 | 2147483647 1419 | files 1420 | 1421 | F6D3B6BA8B984B79B68962FB 1422 | C1212DE3082F424F93EB553F 1423 | 1424 | isa 1425 | PBXHeadersBuildPhase 1426 | runOnlyForDeploymentPostprocessing 1427 | 0 1428 | 1429 | B5226B813BA6458B8A0E45D1 1430 | 1431 | fileRef 1432 | BDB50B4EA5D14FF8BB9755C6 1433 | isa 1434 | PBXBuildFile 1435 | 1436 | B5B1665643424E89954E5DA2 1437 | 1438 | fileRef 1439 | B4838060186C459FA078F980 1440 | isa 1441 | PBXBuildFile 1442 | 1443 | B752C4A665B24F84B8864572 1444 | 1445 | fileRef 1446 | 1EBE84C2020D42E08580A02A 1447 | isa 1448 | PBXBuildFile 1449 | 1450 | BC40806B0B93455D9E708FF3 1451 | 1452 | isa 1453 | PBXTargetDependency 1454 | target 1455 | C639D0433AF74916B3BEFD40 1456 | targetProxy 1457 | D7530CD3DA54486180F1EBF3 1458 | 1459 | BDB50B4EA5D14FF8BB9755C6 1460 | 1461 | isa 1462 | PBXFileReference 1463 | lastKnownFileType 1464 | wrapper.framework 1465 | name 1466 | Foundation.framework 1467 | path 1468 | Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS7.1.sdk/System/Library/Frameworks/Foundation.framework 1469 | sourceTree 1470 | DEVELOPER_DIR 1471 | 1472 | C1212DE3082F424F93EB553F 1473 | 1474 | fileRef 1475 | 93B2828737B845198FD2EB75 1476 | isa 1477 | PBXBuildFile 1478 | 1479 | C138094FD3AD4A9FBCE2DF4E 1480 | 1481 | buildActionMask 1482 | 2147483647 1483 | files 1484 | 1485 | 573D81A0D98E4F80BE8FA05C 1486 | 1487 | isa 1488 | PBXFrameworksBuildPhase 1489 | runOnlyForDeploymentPostprocessing 1490 | 0 1491 | 1492 | C138DE05DC4F449CBF590ED5 1493 | 1494 | explicitFileType 1495 | archive.ar 1496 | includeInIndex 1497 | 0 1498 | isa 1499 | PBXFileReference 1500 | path 1501 | libPods-MPParallaxCollection.a 1502 | sourceTree 1503 | BUILT_PRODUCTS_DIR 1504 | 1505 | C1E922BCE36949139503D32F 1506 | 1507 | buildConfigurationList 1508 | 0A0AC516FC624C5285CC6959 1509 | buildPhases 1510 | 1511 | 3932DE21073746F9904C3358 1512 | 0752555D66804EFCA71C5A1C 1513 | 1514 | buildRules 1515 | 1516 | dependencies 1517 | 1518 | 0865D881922343639C059BAE 1519 | 6AC9C0120D6944FFA2C68DAA 1520 | 1521 | isa 1522 | PBXNativeTarget 1523 | name 1524 | Pods-MPParallaxCollection 1525 | productName 1526 | Pods-MPParallaxCollection 1527 | productReference 1528 | C138DE05DC4F449CBF590ED5 1529 | productType 1530 | com.apple.product-type.library.static 1531 | 1532 | C639D0433AF74916B3BEFD40 1533 | 1534 | buildConfigurationList 1535 | F1F19313BC4E4A7A87E684CC 1536 | buildPhases 1537 | 1538 | 307DF783EA9C459BB43A3A8A 1539 | C138094FD3AD4A9FBCE2DF4E 1540 | C7D18A2161F44E5A8887E859 1541 | 1542 | buildRules 1543 | 1544 | dependencies 1545 | 1546 | isa 1547 | PBXNativeTarget 1548 | name 1549 | Pods-Tests-MPParallaxCollection 1550 | productName 1551 | Pods-Tests-MPParallaxCollection 1552 | productReference 1553 | AB1E632F4013449F840E6AA6 1554 | productType 1555 | com.apple.product-type.library.static 1556 | 1557 | C7D18A2161F44E5A8887E859 1558 | 1559 | buildActionMask 1560 | 2147483647 1561 | files 1562 | 1563 | E2ECBB78B6FE48EF970F997E 1564 | 4C1F132DCF03469EB4755D15 1565 | 1566 | isa 1567 | PBXHeadersBuildPhase 1568 | runOnlyForDeploymentPostprocessing 1569 | 0 1570 | 1571 | C8255CBF6D54421BBFE45B94 1572 | 1573 | children 1574 | 1575 | 680455E0169541F790A70184 1576 | 0F6AFC782AE24366AEB98512 1577 | 1578 | isa 1579 | PBXGroup 1580 | name 1581 | Targets Support Files 1582 | sourceTree 1583 | <group> 1584 | 1585 | CE5D16DEC0A6496DAA4F1280 1586 | 1587 | buildActionMask 1588 | 2147483647 1589 | files 1590 | 1591 | E03D5574CC454DA1AAF5AB77 1592 | EA71C5E76EDB4BC89A142D53 1593 | 2E874591643C41B6AD53D406 1594 | 1595 | isa 1596 | PBXSourcesBuildPhase 1597 | runOnlyForDeploymentPostprocessing 1598 | 0 1599 | 1600 | CFF015F23A2D45FBB8CCEB77 1601 | 1602 | fileRef 1603 | 8DAB20D1F6AE42F583AE4B67 1604 | isa 1605 | PBXBuildFile 1606 | 1607 | D4ED77048A8D4DB79CB107E5 1608 | 1609 | buildActionMask 1610 | 2147483647 1611 | files 1612 | 1613 | 3FEF512545B8494CB9284697 1614 | EDE324AFCD0A44DE98B5C200 1615 | 1616 | isa 1617 | PBXFrameworksBuildPhase 1618 | runOnlyForDeploymentPostprocessing 1619 | 0 1620 | 1621 | D6351238DC6C44B1A39B955C 1622 | 1623 | includeInIndex 1624 | 1 1625 | isa 1626 | PBXFileReference 1627 | lastKnownFileType 1628 | text.plist.xml 1629 | path 1630 | Pods-Tests-acknowledgements.plist 1631 | sourceTree 1632 | <group> 1633 | 1634 | D7530CD3DA54486180F1EBF3 1635 | 1636 | containerPortal 1637 | 7609A434445C4702BD36EA31 1638 | isa 1639 | PBXContainerItemProxy 1640 | proxyType 1641 | 1 1642 | remoteGlobalIDString 1643 | C639D0433AF74916B3BEFD40 1644 | remoteInfo 1645 | Pods-Tests-MPParallaxCollection 1646 | 1647 | DBE290845AF949489F04F817 1648 | 1649 | children 1650 | 1651 | 9807A50C50B74F309CBC3E08 1652 | 458FFB61576342D7A6B5E9BB 1653 | 7D4CF93215DD4DFC9C2FCED3 1654 | 136DDFC7C58E449190034FC5 1655 | 4B58F452AB3A4078A5242D13 1656 | C8255CBF6D54421BBFE45B94 1657 | 1658 | isa 1659 | PBXGroup 1660 | sourceTree 1661 | <group> 1662 | 1663 | DE0AC17B93EB4B6AB37DE438 1664 | 1665 | includeInIndex 1666 | 1 1667 | isa 1668 | PBXFileReference 1669 | lastKnownFileType 1670 | sourcecode.c.h 1671 | name 1672 | MPParallaxCollectionViewCell.h 1673 | path 1674 | Classes/MPParallaxCollectionViewCell.h 1675 | sourceTree 1676 | <group> 1677 | 1678 | DEBF1851B50047F58514E4CC 1679 | 1680 | includeInIndex 1681 | 1 1682 | isa 1683 | PBXFileReference 1684 | lastKnownFileType 1685 | sourcecode.c.objc 1686 | path 1687 | Pods-MPParallaxCollection-MPTextReveal-dummy.m 1688 | sourceTree 1689 | <group> 1690 | 1691 | E03D5574CC454DA1AAF5AB77 1692 | 1693 | fileRef 1694 | 54DA804D0C2B4FD1B4FDBBF2 1695 | isa 1696 | PBXBuildFile 1697 | settings 1698 | 1699 | COMPILER_FLAGS 1700 | -fobjc-arc 1701 | 1702 | 1703 | E2ECBB78B6FE48EF970F997E 1704 | 1705 | fileRef 1706 | DE0AC17B93EB4B6AB37DE438 1707 | isa 1708 | PBXBuildFile 1709 | 1710 | E4B20BACBE6949A3AE7C016B 1711 | 1712 | buildSettings 1713 | 1714 | ALWAYS_SEARCH_USER_PATHS 1715 | NO 1716 | CLANG_CXX_LANGUAGE_STANDARD 1717 | gnu++0x 1718 | CLANG_CXX_LIBRARY 1719 | libc++ 1720 | CLANG_ENABLE_MODULES 1721 | YES 1722 | CLANG_ENABLE_OBJC_ARC 1723 | NO 1724 | CLANG_WARN_BOOL_CONVERSION 1725 | YES 1726 | CLANG_WARN_CONSTANT_CONVERSION 1727 | YES 1728 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE 1729 | YES 1730 | CLANG_WARN_EMPTY_BODY 1731 | YES 1732 | CLANG_WARN_ENUM_CONVERSION 1733 | YES 1734 | CLANG_WARN_INT_CONVERSION 1735 | YES 1736 | CLANG_WARN_OBJC_ROOT_CLASS 1737 | YES 1738 | COPY_PHASE_STRIP 1739 | NO 1740 | ENABLE_NS_ASSERTIONS 1741 | NO 1742 | GCC_C_LANGUAGE_STANDARD 1743 | gnu99 1744 | GCC_WARN_64_TO_32_BIT_CONVERSION 1745 | YES 1746 | GCC_WARN_ABOUT_RETURN_TYPE 1747 | YES 1748 | GCC_WARN_UNDECLARED_SELECTOR 1749 | YES 1750 | GCC_WARN_UNINITIALIZED_AUTOS 1751 | YES 1752 | GCC_WARN_UNUSED_FUNCTION 1753 | YES 1754 | GCC_WARN_UNUSED_VARIABLE 1755 | YES 1756 | IPHONEOS_DEPLOYMENT_TARGET 1757 | 7.1 1758 | STRIP_INSTALLED_PRODUCT 1759 | NO 1760 | VALIDATE_PRODUCT 1761 | YES 1762 | 1763 | isa 1764 | XCBuildConfiguration 1765 | name 1766 | Release 1767 | 1768 | EA71C5E76EDB4BC89A142D53 1769 | 1770 | fileRef 1771 | 5FD684B0CD574884ACDFE437 1772 | isa 1773 | PBXBuildFile 1774 | settings 1775 | 1776 | COMPILER_FLAGS 1777 | -fobjc-arc 1778 | 1779 | 1780 | EC897FA0A1D642E6BDB01D8E 1781 | 1782 | baseConfigurationReference 1783 | 8B7DB15B5806493BA59B9D2D 1784 | buildSettings 1785 | 1786 | ALWAYS_SEARCH_USER_PATHS 1787 | NO 1788 | COPY_PHASE_STRIP 1789 | NO 1790 | DSTROOT 1791 | /tmp/xcodeproj.dst 1792 | GCC_C_LANGUAGE_STANDARD 1793 | gnu99 1794 | GCC_DYNAMIC_NO_PIC 1795 | NO 1796 | GCC_OPTIMIZATION_LEVEL 1797 | 0 1798 | GCC_PRECOMPILE_PREFIX_HEADER 1799 | YES 1800 | GCC_PREFIX_HEADER 1801 | Pods-MPParallaxCollection-MPTextReveal-prefix.pch 1802 | GCC_PREPROCESSOR_DEFINITIONS 1803 | 1804 | DEBUG=1 1805 | $(inherited) 1806 | 1807 | GCC_SYMBOLS_PRIVATE_EXTERN 1808 | NO 1809 | GCC_VERSION 1810 | com.apple.compilers.llvm.clang.1_0 1811 | INSTALL_PATH 1812 | $(BUILT_PRODUCTS_DIR) 1813 | IPHONEOS_DEPLOYMENT_TARGET 1814 | 7.1 1815 | OTHER_LDFLAGS 1816 | 1817 | PRODUCT_NAME 1818 | $(TARGET_NAME) 1819 | PUBLIC_HEADERS_FOLDER_PATH 1820 | $(TARGET_NAME) 1821 | SDKROOT 1822 | iphoneos 1823 | SKIP_INSTALL 1824 | YES 1825 | 1826 | isa 1827 | XCBuildConfiguration 1828 | name 1829 | Debug 1830 | 1831 | EDE324AFCD0A44DE98B5C200 1832 | 1833 | fileRef 1834 | AB1E632F4013449F840E6AA6 1835 | isa 1836 | PBXBuildFile 1837 | 1838 | EF3FAE95004643A3BDF53A6C 1839 | 1840 | buildConfigurations 1841 | 1842 | 119AA2202F304AFEA2EB7749 1843 | 750A58AC309A4240A5F5C03F 1844 | 1845 | defaultConfigurationIsVisible 1846 | 0 1847 | defaultConfigurationName 1848 | Release 1849 | isa 1850 | XCConfigurationList 1851 | 1852 | F1F19313BC4E4A7A87E684CC 1853 | 1854 | buildConfigurations 1855 | 1856 | 900EB2DA59BC4A5FA2FC8A95 1857 | 7DB00AF29E4345F58D7473B1 1858 | 1859 | defaultConfigurationIsVisible 1860 | 0 1861 | defaultConfigurationName 1862 | Release 1863 | isa 1864 | XCConfigurationList 1865 | 1866 | F681117C1C5B4203B3704DD0 1867 | 1868 | buildConfigurations 1869 | 1870 | EC897FA0A1D642E6BDB01D8E 1871 | FA10C3F4C7C0430F97D4E842 1872 | 1873 | defaultConfigurationIsVisible 1874 | 0 1875 | defaultConfigurationName 1876 | Release 1877 | isa 1878 | XCConfigurationList 1879 | 1880 | F6D3B6BA8B984B79B68962FB 1881 | 1882 | fileRef 1883 | DE0AC17B93EB4B6AB37DE438 1884 | isa 1885 | PBXBuildFile 1886 | 1887 | F909F974CD574356BC938E1E 1888 | 1889 | buildSettings 1890 | 1891 | ALWAYS_SEARCH_USER_PATHS 1892 | NO 1893 | CLANG_CXX_LANGUAGE_STANDARD 1894 | gnu++0x 1895 | CLANG_CXX_LIBRARY 1896 | libc++ 1897 | CLANG_ENABLE_MODULES 1898 | YES 1899 | CLANG_ENABLE_OBJC_ARC 1900 | NO 1901 | CLANG_WARN_BOOL_CONVERSION 1902 | YES 1903 | CLANG_WARN_CONSTANT_CONVERSION 1904 | YES 1905 | CLANG_WARN_DIRECT_OBJC_ISA_USAGE 1906 | YES 1907 | CLANG_WARN_EMPTY_BODY 1908 | YES 1909 | CLANG_WARN_ENUM_CONVERSION 1910 | YES 1911 | CLANG_WARN_INT_CONVERSION 1912 | YES 1913 | CLANG_WARN_OBJC_ROOT_CLASS 1914 | YES 1915 | COPY_PHASE_STRIP 1916 | YES 1917 | GCC_C_LANGUAGE_STANDARD 1918 | gnu99 1919 | GCC_DYNAMIC_NO_PIC 1920 | NO 1921 | GCC_OPTIMIZATION_LEVEL 1922 | 0 1923 | GCC_PREPROCESSOR_DEFINITIONS 1924 | 1925 | DEBUG=1 1926 | $(inherited) 1927 | 1928 | GCC_SYMBOLS_PRIVATE_EXTERN 1929 | NO 1930 | GCC_WARN_64_TO_32_BIT_CONVERSION 1931 | YES 1932 | GCC_WARN_ABOUT_RETURN_TYPE 1933 | YES 1934 | GCC_WARN_UNDECLARED_SELECTOR 1935 | YES 1936 | GCC_WARN_UNINITIALIZED_AUTOS 1937 | YES 1938 | GCC_WARN_UNUSED_FUNCTION 1939 | YES 1940 | GCC_WARN_UNUSED_VARIABLE 1941 | YES 1942 | IPHONEOS_DEPLOYMENT_TARGET 1943 | 7.1 1944 | ONLY_ACTIVE_ARCH 1945 | YES 1946 | STRIP_INSTALLED_PRODUCT 1947 | NO 1948 | 1949 | isa 1950 | XCBuildConfiguration 1951 | name 1952 | Debug 1953 | 1954 | FA10C3F4C7C0430F97D4E842 1955 | 1956 | baseConfigurationReference 1957 | 8B7DB15B5806493BA59B9D2D 1958 | buildSettings 1959 | 1960 | ALWAYS_SEARCH_USER_PATHS 1961 | NO 1962 | COPY_PHASE_STRIP 1963 | YES 1964 | DSTROOT 1965 | /tmp/xcodeproj.dst 1966 | GCC_C_LANGUAGE_STANDARD 1967 | gnu99 1968 | GCC_PRECOMPILE_PREFIX_HEADER 1969 | YES 1970 | GCC_PREFIX_HEADER 1971 | Pods-MPParallaxCollection-MPTextReveal-prefix.pch 1972 | GCC_VERSION 1973 | com.apple.compilers.llvm.clang.1_0 1974 | INSTALL_PATH 1975 | $(BUILT_PRODUCTS_DIR) 1976 | IPHONEOS_DEPLOYMENT_TARGET 1977 | 7.1 1978 | OTHER_CFLAGS 1979 | 1980 | -DNS_BLOCK_ASSERTIONS=1 1981 | $(inherited) 1982 | 1983 | OTHER_CPLUSPLUSFLAGS 1984 | 1985 | -DNS_BLOCK_ASSERTIONS=1 1986 | $(inherited) 1987 | 1988 | OTHER_LDFLAGS 1989 | 1990 | PRODUCT_NAME 1991 | $(TARGET_NAME) 1992 | PUBLIC_HEADERS_FOLDER_PATH 1993 | $(TARGET_NAME) 1994 | SDKROOT 1995 | iphoneos 1996 | SKIP_INSTALL 1997 | YES 1998 | VALIDATE_PRODUCT 1999 | YES 2000 | 2001 | isa 2002 | XCBuildConfiguration 2003 | name 2004 | Release 2005 | 2006 | FA1D23D4E3AE4D0A8EB6B90E 2007 | 2008 | buildActionMask 2009 | 2147483647 2010 | files 2011 | 2012 | CFF015F23A2D45FBB8CCEB77 2013 | 2014 | isa 2015 | PBXHeadersBuildPhase 2016 | runOnlyForDeploymentPostprocessing 2017 | 0 2018 | 2019 | FE942EF9A3784AE8B102C0A9 2020 | 2021 | explicitFileType 2022 | archive.ar 2023 | includeInIndex 2024 | 0 2025 | isa 2026 | PBXFileReference 2027 | path 2028 | libPods-MPParallaxCollection-MPTextReveal.a 2029 | sourceTree 2030 | BUILT_PRODUCTS_DIR 2031 | 2032 | 2033 | rootObject 2034 | 7609A434445C4702BD36EA31 2035 | 2036 | 2037 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Info.plist: -------------------------------------------------------------------------------- 1 | 2 | 3 | 4 | 5 | CFBundleDevelopmentRegion 6 | en 7 | CFBundleExecutable 8 | ${EXECUTABLE_NAME} 9 | CFBundleIdentifier 10 | org.cocoapods.demo.${PRODUCT_NAME:rfc1034identifier} 11 | CFBundleInfoDictionaryVersion 12 | 6.0 13 | CFBundlePackageType 14 | BNDL 15 | CFBundleShortVersionString 16 | 1.0 17 | CFBundleSignature 18 | ???? 19 | CFBundleVersion 20 | 1 21 | 22 | 23 | -------------------------------------------------------------------------------- /Example/Tests/Tests-Prefix.pch: -------------------------------------------------------------------------------- 1 | // 2 | // Prefix header 3 | // 4 | // The contents of this file are implicitly included at the beginning of every test case source file. 5 | // 6 | 7 | #ifdef __OBJC__ 8 | 9 | 10 | #endif 11 | -------------------------------------------------------------------------------- /Example/Tests/Tests.m: -------------------------------------------------------------------------------- 1 | // 2 | // MPParallaxCollectionTests.m 3 | // MPParallaxCollectionTests 4 | // 5 | // Created by Alex Manzella on 08/05/2014. 6 | // Copyright (c) 2014 Alex Manzella. All rights reserved. 7 | // 8 | 9 | 10 | -------------------------------------------------------------------------------- /Example/Tests/en.lproj/InfoPlist.strings: -------------------------------------------------------------------------------- 1 | /* Localized versions of Info.plist keys */ 2 | 3 | -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- 1 | Copyright (c) Alex Manzella. 2 | All rights reserved. 3 | 4 | Redistribution and use in source and binary forms, with or without modification, 5 | are permitted provided that the following conditions are met: 6 | 7 | 1. Redistributions of source code must retain the above copyright notice, 8 | this list of conditions and the following disclaimer. 9 | 10 | 2. Redistributions in binary form must reproduce the above copyright 11 | notice, this list of conditions and the following disclaimer in the 12 | documentation and/or other materials provided with the distribution. 13 | 14 | 3. Neither the name of Alex Manzella nor the names of its contributors may be used 15 | to endorse or promote products derived from this software without 16 | specific prior written permission. 17 | 18 | THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND 19 | ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED 20 | WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE 21 | DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR 22 | ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES 23 | (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; 24 | LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON 25 | ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT 26 | (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS 27 | SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. 28 | -------------------------------------------------------------------------------- /MPParallaxCollection.podspec: -------------------------------------------------------------------------------- 1 | # 2 | # Be sure to run `pod lib lint MPParallaxCollection.podspec' to ensure this is a 3 | # valid spec and remove all comments before submitting the spec. 4 | # 5 | # Any lines starting with a # are optional, but encouraged 6 | # 7 | # To learn more about a Podspec see http://guides.cocoapods.org/syntax/podspec.html 8 | # 9 | 10 | Pod::Spec.new do |s| 11 | s.name = "MPParallaxCollection" 12 | s.version = "0.1.0" 13 | s.summary = "CollectionView with Parallax and PercentDriven animations" 14 | s.description = <<-DESC 15 | A collection view layout and a cell subclass usefull to made parallax of an image during the scrolling. 16 | But even thanks to the delegate useful to make cool percent driven effect, in the example I used my [MPTextReveal](https://github.com/MP0w/MPTextReveal) 17 | to show you how to use. 18 | DESC 19 | s.homepage = "https://github.com/MP0w/MPParallaxCollection" 20 | s.license = 'BSD' 21 | s.author = { "Alex Manzella" => "manzopower@icloud.com" } 22 | s.source = { :git => "https://github.com/MP0w/MPParallaxCollection.git", :tag => s.version.to_s } 23 | s.social_media_url = 'https://twitter.com/manzopower' 24 | 25 | s.platform = :ios, '7.0' 26 | s.requires_arc = true 27 | 28 | s.source_files = 'Classes/' 29 | 30 | # s.dependency 'AFNetworking', '~> 2.3' 31 | end 32 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | #MPParallaxCollection 2 | 3 | 4 | ![](img/inaction.gif) 5 | 6 | A collection view layout and a cell subclass usefull to made parallax of an image during the scrolling. 7 | But even thanks to the delegate useful to make cool percent driven effect, in the example I used my [MPTextReveal](https://github.com/MP0w/MPTextReveal) 8 | to show you how to use. 9 | 10 | 11 | [![CI Status](http://img.shields.io/travis/MP0w/MPParallaxCollection.svg?style=flat)](https://travis-ci.org/MP0w/MPParallaxCollection) 12 | [![Version](https://img.shields.io/cocoapods/v/MPParallaxCollection.svg?style=flat)](http://cocoadocs.org/docsets/MPParallaxCollection) 13 | [![License](https://img.shields.io/cocoapods/l/MPParallaxCollection.svg?style=flat)](http://cocoadocs.org/docsets/MPParallaxCollection) 14 | [![Platform](https://img.shields.io/cocoapods/p/MPParallaxCollection.svg?style=flat)](http://cocoadocs.org/docsets/MPParallaxCollection) 15 | 16 | ## Usage 17 | 18 | To run the example project, clone the repo, and run `pod install` from the Example directory first. 19 | 20 | ## Requirements 21 | 22 | ## Installation 23 | 24 | MPParallaxCollection is available through [CocoaPods](http://cocoapods.org). To install 25 | it, simply add the following line to your Podfile: 26 | 27 | pod "MPParallaxCollection" 28 | 29 | ## Author 30 | 31 | Alex Manzella, manzopower@icloud.com 32 | 33 | ## License 34 | 35 | MPParallaxCollection is available under the BSD license. See the LICENSE file for more info. 36 | 37 | 38 | 39 | ![](img/img0.png) 40 | ![](img/img1.png) 41 | -------------------------------------------------------------------------------- /img/img0.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/img/img0.png -------------------------------------------------------------------------------- /img/img1.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/img/img1.png -------------------------------------------------------------------------------- /img/inaction.gif: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/MP0w/MPParallaxCollection/719e2eda383fd6b24b5e595711d8c1ed8269c467/img/inaction.gif --------------------------------------------------------------------------------