diff --git a/CSStickyHeaderFlowLayout.podspec b/CSStickyHeaderFlowLayout.podspec index 0ff3f67..1beeafc 100644 --- a/CSStickyHeaderFlowLayout.podspec +++ b/CSStickyHeaderFlowLayout.podspec @@ -11,10 +11,10 @@ Pod::Spec.new do |s| s.license = 'MIT' s.author = { "James Tang" => "j@jamztang.com" } s.source = { :git => "https://github.com/jamztang/CSStickyHeaderFlowLayout.git", :tag => s.version.to_s } - s.platform = :ios, '7.0' - s.ios.deployment_target = '7.0' + s.platform = :ios, '9.0' + s.ios.deployment_target = '9.0' s.requires_arc = true - s.source_files = 'Classes' + s.source_files = 'Classes/**/*.{swift}' s.ios.exclude_files = 'Classes/osx' s.osx.exclude_files = 'Classes/ios' end diff --git a/Classes/CSStickyHeaderFlowLayout.h b/Classes/CSStickyHeaderFlowLayout.h deleted file mode 100644 index 690b9c2..0000000 --- a/Classes/CSStickyHeaderFlowLayout.h +++ /dev/null @@ -1,32 +0,0 @@ -/* - * This file is part of the CSStickyHeaderFlowLayout package. - * (c) James Tang - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -#import - -//! Project version number for CSStickyHeaderFlowLayout. -FOUNDATION_EXPORT double CSStickyHeaderFlowLayoutVersionNumber; - -//! Project version string for CSStickyHeaderFlowLayout. -FOUNDATION_EXPORT const unsigned char CSStickyHeaderFlowLayoutVersionString[]; - -// Import All public headers -#import - -#pragma mark - - -extern NSString *const CSStickyHeaderParallaxHeader; - -@interface CSStickyHeaderFlowLayout : UICollectionViewFlowLayout - -@property (nonatomic) CGSize parallaxHeaderReferenceSize; -@property (nonatomic) CGSize parallaxHeaderMinimumReferenceSize; -@property (nonatomic) BOOL parallaxHeaderAlwaysOnTop; -@property (nonatomic) BOOL disableStickyHeaders; -@property (nonatomic) BOOL disableStretching; - -@end diff --git a/Classes/CSStickyHeaderFlowLayout.m b/Classes/CSStickyHeaderFlowLayout.m deleted file mode 100644 index 610ba91..0000000 --- a/Classes/CSStickyHeaderFlowLayout.m +++ /dev/null @@ -1,337 +0,0 @@ -/* - * This file is part of the CSStickyHeaderFlowLayout package. - * (c) James Tang - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -#import "CSStickyHeaderFlowLayout.h" -#import "CSStickyHeaderFlowLayoutAttributes.h" - - -NSString *const CSStickyHeaderParallaxHeader = @"CSStickyHeaderParallexHeader"; -static const NSInteger kHeaderZIndex = 1024; - -@interface CSStickyHeaderFlowLayout (Debug) - -- (void)debugLayoutAttributes:(NSArray *)layoutAttributes; - -@end - - -@implementation CSStickyHeaderFlowLayout - -- (void)prepareLayout { - [super prepareLayout]; -} - -- (UICollectionViewLayoutAttributes *)initialLayoutAttributesForAppearingSupplementaryElementOfKind:(NSString *)elementKind - atIndexPath:(NSIndexPath *)elementIndexPath { - UICollectionViewLayoutAttributes *attributes = [super initialLayoutAttributesForAppearingSupplementaryElementOfKind:elementKind atIndexPath:elementIndexPath]; - - if ([elementKind isEqualToString:CSStickyHeaderParallaxHeader]) { - // sticky header do not need to offset - return nil; - } else { - // offset others - - CGRect frame = attributes.frame; - frame.origin.y += self.parallaxHeaderReferenceSize.height; - attributes.frame = frame; - } - - return attributes; -} - -- (UICollectionViewLayoutAttributes *)finalLayoutAttributesForDisappearingSupplementaryElementOfKind:(NSString *)elementKind atIndexPath:(NSIndexPath *)elementIndexPath { - - if ([elementKind isEqualToString:CSStickyHeaderParallaxHeader]) { - CSStickyHeaderFlowLayoutAttributes *attribute = (CSStickyHeaderFlowLayoutAttributes *)[self layoutAttributesForSupplementaryViewOfKind:elementKind atIndexPath:elementIndexPath]; - - [self updateParallaxHeaderAttribute:attribute]; - return attribute; - } else { - return [super finalLayoutAttributesForDisappearingSupplementaryElementOfKind:elementKind atIndexPath:elementIndexPath]; - } - return nil; -} - -- (UICollectionViewLayoutAttributes *)layoutAttributesForSupplementaryViewOfKind:(NSString *)kind atIndexPath:(NSIndexPath *)indexPath -{ - UICollectionViewLayoutAttributes *attributes = [super layoutAttributesForSupplementaryViewOfKind:kind atIndexPath:indexPath]; - if (!attributes && [kind isEqualToString:CSStickyHeaderParallaxHeader]) { - attributes = [CSStickyHeaderFlowLayoutAttributes layoutAttributesForSupplementaryViewOfKind:kind withIndexPath:indexPath]; - } - return attributes; -} - -- (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect -{ - - if (self.collectionView.dataSource != nil) { - // The rect should compensate the header size - CGRect adjustedRect = rect; - adjustedRect.origin.y -= self.parallaxHeaderReferenceSize.height; - - NSMutableArray *allItems = [NSMutableArray array]; - NSArray *originalAttributes = [super layoutAttributesForElementsInRect:adjustedRect]; - //Perform a deep copy of the attributes returned from super - for (UICollectionViewLayoutAttributes *originalAttribute in originalAttributes) { - [allItems addObject:[originalAttribute copy]]; - } - - NSMutableDictionary *headers = [[NSMutableDictionary alloc] init]; - NSMutableDictionary *lastCells = [[NSMutableDictionary alloc] init]; - __block BOOL visibleParallexHeader; - - [allItems enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { - UICollectionViewLayoutAttributes *attributes = obj; - - CGRect frame = attributes.frame; - frame.origin.y += self.parallaxHeaderReferenceSize.height; - attributes.frame = frame; - - NSIndexPath *indexPath = [(UICollectionViewLayoutAttributes *)obj indexPath]; - BOOL isHeader = [[obj representedElementKind] isEqualToString:UICollectionElementKindSectionHeader]; - BOOL isFooter = [[obj representedElementKind] isEqualToString:UICollectionElementKindSectionFooter]; - - if (isHeader) { - [headers setObject:obj forKey:@(indexPath.section)]; - } else if (isFooter) { - // Not implemeneted - } else { - UICollectionViewLayoutAttributes *currentAttribute = [lastCells objectForKey:@(indexPath.section)]; - - // Get the bottom most cell of that section - if ( ! currentAttribute || indexPath.row > currentAttribute.indexPath.row) { - [lastCells setObject:obj forKey:@(indexPath.section)]; - } - - if ([indexPath item] == 0 && [indexPath section] == 0) { - visibleParallexHeader = YES; - } - } - - if (isHeader) { - attributes.zIndex = kHeaderZIndex; - } else { - // For iOS 7.0, the cell zIndex should be above sticky section header - attributes.zIndex = 1; - } - }]; - - // when the visible rect is at top of the screen, make sure we see - // the parallex header - if (CGRectGetMinY(rect) <= 0) { - visibleParallexHeader = YES; - } - - if (self.parallaxHeaderAlwaysOnTop == YES) { - visibleParallexHeader = YES; - } - - - // This method may not be explicitly defined, default to 1 - // https://developer.apple.com/library/ios/documentation/uikit/reference/UICollectionViewDataSource_protocol/Reference/Reference.html#jumpTo_6 - // NSUInteger numberOfSections = [self.collectionView.dataSource - // respondsToSelector:@selector(numberOfSectionsInCollectionView:)] - // ? [self.collectionView.dataSource numberOfSectionsInCollectionView:self.collectionView] - // : 1; - - // Create the attributes for the Parallex header - if (visibleParallexHeader && ! CGSizeEqualToSize(CGSizeZero, self.parallaxHeaderReferenceSize)) { - CSStickyHeaderFlowLayoutAttributes *currentAttribute = [CSStickyHeaderFlowLayoutAttributes layoutAttributesForSupplementaryViewOfKind:CSStickyHeaderParallaxHeader withIndexPath:[NSIndexPath indexPathWithIndex:0]]; - [self updateParallaxHeaderAttribute:currentAttribute]; - - [allItems addObject:currentAttribute]; - } - - if ( ! self.disableStickyHeaders) { - [lastCells enumerateKeysAndObjectsUsingBlock:^(id key, id obj, BOOL *stop) { - NSIndexPath *indexPath = [obj indexPath]; - NSNumber *indexPathKey = @(indexPath.section); - - UICollectionViewLayoutAttributes *header = headers[indexPathKey]; - // CollectionView automatically removes headers not in bounds - if ( ! header) { - header = [self layoutAttributesForSupplementaryViewOfKind:UICollectionElementKindSectionHeader - atIndexPath:[NSIndexPath indexPathForItem:0 inSection:indexPath.section]]; - - if (!CGSizeEqualToSize(CGSizeZero, header.frame.size)) { - [allItems addObject:header]; - } - } - if (!CGSizeEqualToSize(CGSizeZero, header.frame.size)) { - [self updateHeaderAttributes:header lastCellAttributes:lastCells[indexPathKey]]; - } - }]; - } - - // For debugging purpose - // [self debugLayoutAttributes:allItems]; - - return allItems; - } else { - return nil; - } -} - -- (UICollectionViewLayoutAttributes *)layoutAttributesForItemAtIndexPath:(NSIndexPath *)indexPath { - UICollectionViewLayoutAttributes *attributes = [super layoutAttributesForItemAtIndexPath:indexPath].copy; - CGRect frame = attributes.frame; - frame.origin.y += self.parallaxHeaderReferenceSize.height; - attributes.frame = frame; - return attributes; -} - -- (CGSize)collectionViewContentSize { - // If not part of view hierarchy then return CGSizeZero (as in docs). - // Call [super collectionViewContentSize] can cause EXC_BAD_ACCESS when collectionView has no superview. - if (!self.collectionView.superview) { - return CGSizeZero; - } - CGSize size = [super collectionViewContentSize]; - size.height += self.parallaxHeaderReferenceSize.height; - return size; -} - -- (BOOL)shouldInvalidateLayoutForBoundsChange:(CGRect)newBounds -{ - return YES; -} - -#pragma mark Overrides - -+ (Class)layoutAttributesClass { - return [CSStickyHeaderFlowLayoutAttributes class]; -} - -- (void)setParallaxHeaderReferenceSize:(CGSize)parallaxHeaderReferenceSize { - _parallaxHeaderReferenceSize = parallaxHeaderReferenceSize; - // Make sure we update the layout - [self invalidateLayout]; -} - -#pragma mark Helper - -- (void)updateHeaderAttributes:(UICollectionViewLayoutAttributes *)attributes lastCellAttributes:(UICollectionViewLayoutAttributes *)lastCellAttributes -{ - CGRect currentBounds = self.collectionView.bounds; - attributes.zIndex = kHeaderZIndex; - attributes.hidden = NO; - - CGPoint origin = attributes.frame.origin; - - CGFloat sectionMaxY = CGRectGetMaxY(lastCellAttributes.frame) - attributes.frame.size.height; - CGFloat y = CGRectGetMaxY(currentBounds) - currentBounds.size.height + self.collectionView.contentInset.top; - - if (self.parallaxHeaderAlwaysOnTop) { - y += self.parallaxHeaderMinimumReferenceSize.height; - } - - CGFloat maxY = MIN(MAX(y, attributes.frame.origin.y), sectionMaxY); - -// NSLog(@"%.2f, %.2f, %.2f", y, maxY, sectionMaxY); - - origin.y = maxY; - - attributes.frame = (CGRect){ - origin, - attributes.frame.size - }; -} - -- (void)updateParallaxHeaderAttribute:(CSStickyHeaderFlowLayoutAttributes *)currentAttribute { - - CGRect frame = currentAttribute.frame; - frame.size.width = self.parallaxHeaderReferenceSize.width; - frame.size.height = self.parallaxHeaderReferenceSize.height; - - CGRect bounds = self.collectionView.bounds; - CGFloat maxY = CGRectGetMaxY(frame); - - // make sure the frame won't be negative values - CGFloat y = MIN(maxY - self.parallaxHeaderMinimumReferenceSize.height, bounds.origin.y + self.collectionView.contentInset.top); - CGFloat height = MAX(0, -y + maxY); - - - CGFloat maxHeight = self.parallaxHeaderReferenceSize.height; - CGFloat minHeight = self.parallaxHeaderMinimumReferenceSize.height; - CGFloat progressiveness = (height - minHeight)/(maxHeight - minHeight); - currentAttribute.progressiveness = progressiveness; - - // if zIndex < 0 would prevents tap from recognized right under navigation bar - currentAttribute.zIndex = 0; - - // When parallaxHeaderAlwaysOnTop is enabled, we will check when we should update the y position - if (self.parallaxHeaderAlwaysOnTop && height <= self.parallaxHeaderMinimumReferenceSize.height) { - CGFloat insetTop = self.collectionView.contentInset.top; - // Always stick to top but under the nav bar - y = self.collectionView.contentOffset.y + insetTop; - currentAttribute.zIndex = 2000; - } - - currentAttribute.frame = (CGRect){ - frame.origin.x, - y, - frame.size.width, - self.disableStretching && height > maxHeight ? maxHeight : height, - }; - -} - -@end - -#pragma mark - Debugging - -@implementation CSStickyHeaderFlowLayoutAttributes (Debug) - -- (NSString *)description { - NSString *indexPathString = [NSString stringWithFormat:@"{%ld, %ld}", (long)self.indexPath.section, (long)self.indexPath.item]; - - NSString *desc = [NSString stringWithFormat:@" indexPath: %@ zIndex: %ld valid: %@ kind: %@", self, indexPathString, (long)self.zIndex, [self isValid] ? @"YES" : @"NO", self.representedElementKind ?: @"cell"]; - - return desc; -} - -- (BOOL)isValid { - switch (self.representedElementCategory) { - case UICollectionElementCategoryCell: - if (self.zIndex != 1) { - return NO; - } - return YES; - case UICollectionElementCategorySupplementaryView: - if ([self.representedElementKind isEqualToString:CSStickyHeaderParallaxHeader]) { - return YES; - } else if (self.zIndex < 1024) { - return NO; - } - return YES; - default: - return YES; - } -} - -@end - - -@implementation CSStickyHeaderFlowLayout (Debug) - -- (void)debugLayoutAttributes:(NSArray *)layoutAttributes { - __block BOOL hasInvalid = NO; - [layoutAttributes enumerateObjectsUsingBlock:^(CSStickyHeaderFlowLayoutAttributes *attr, NSUInteger idx, BOOL *stop) { - hasInvalid = ![attr isValid]; - if (hasInvalid) { - *stop = YES; - } - }]; - - if (hasInvalid) { - NSLog(@"CSStickyHeaderFlowLayout: %@", layoutAttributes); - } -} - -@end - diff --git a/Classes/CSStickyHeaderFlowLayout.swift b/Classes/CSStickyHeaderFlowLayout.swift new file mode 100644 index 0000000..363c43f --- /dev/null +++ b/Classes/CSStickyHeaderFlowLayout.swift @@ -0,0 +1,232 @@ +// +// CSStickyHeaderFlowLayout.swift +// CSStickyHeaderFlowLayoutDemo +// +// Created by Christian Enevoldsen on 13/09/16. +// Copyright © 2016 Jamz Tang. All rights reserved. +// + +import UIKit + +public let CSStickyHeaderParallaxHeader = "CSStickyHeaderParallaxHeader" + +open class CSStickyHeaderFlowLayout: UICollectionViewFlowLayout { + + // MARK: Properties + + open var parallaxHeaderReferenceSize = CGSize.zero { + didSet { invalidateLayout() } + } + + open var parallaxHeaderMinimumReferenceSize = CGSize.zero + open var parallaxHeaderAlwaysOnTop = false + open var disableStickyHeaders = false + open var disableStretching = false + + // MARK: Expose Kind Name for ObjC + + open static func elementKindStickyHeaderParallaxHeader() -> String { + return CSStickyHeaderParallaxHeader + } + + // MARK: Layout Attributes + + open override func initialLayoutAttributesForAppearingSupplementaryElement(ofKind elementKind: String, at elementIndexPath: IndexPath) -> UICollectionViewLayoutAttributes? { + guard let attributes = super.initialLayoutAttributesForAppearingSupplementaryElement(ofKind: elementKind, at: elementIndexPath) else { return nil } + + if elementKind != CSStickyHeaderParallaxHeader { + var frame = attributes.frame + frame.origin.y += parallaxHeaderReferenceSize.height + + attributes.frame = frame + } + + return attributes + } + + open override func finalLayoutAttributesForDisappearingSupplementaryElement(ofKind elementKind: String, at elementIndexPath: IndexPath) -> UICollectionViewLayoutAttributes? { + guard + let attributes = layoutAttributesForSupplementaryView(ofKind: elementKind, at: elementIndexPath) as? CSStickyHeaderFlowLayoutAttributes, + elementKind != CSStickyHeaderParallaxHeader + else { + return super.finalLayoutAttributesForDisappearingSupplementaryElement(ofKind: elementKind, at: elementIndexPath) + } + + updateParallaxHeaderAttributes(attributes) + + return attributes + } + + open override func layoutAttributesForSupplementaryView(ofKind elementKind: String, at indexPath: IndexPath) -> UICollectionViewLayoutAttributes? { + guard let attributes = super.layoutAttributesForSupplementaryView(ofKind: elementKind, at: indexPath) else { + + if elementKind == CSStickyHeaderParallaxHeader { + return CSStickyHeaderFlowLayoutAttributes(forSupplementaryViewOfKind: CSStickyHeaderParallaxHeader, with: indexPath) + } else { + return nil + } + } + + return attributes + + } + + open override func layoutAttributesForElements(in rect: CGRect) -> [UICollectionViewLayoutAttributes]? { + let adjustedRect = rect.offsetBy(dx: 0, dy: -parallaxHeaderReferenceSize.height) + + guard let _ = collectionView, let originalAttributes = super.layoutAttributesForElements(in: adjustedRect) else { return nil } + + var retVal = [IndexPath: UICollectionViewLayoutAttributes]() + var parallaxHeaderOnScreen = false + + let allItems = originalAttributes.flatMap { + $0.copy() as? UICollectionViewLayoutAttributes + } + + var visibleHeaders = allItems.filter { + $0.representedElementKind == UICollectionElementKindSectionHeader + } + + let visibleCells = allItems.filter { + $0.representedElementCategory == .cell + } + + let otherVisibleItems = allItems.filter { + return $0.representedElementKind == UICollectionElementKindSectionFooter || $0.representedElementCategory == .decorationView + } + + (visibleHeaders + visibleCells).forEach { + $0.frame = $0.frame.offsetBy(dx: 0, dy: self.parallaxHeaderReferenceSize.height) + } + + let lastCells = visibleCells + .reduce([Int : UICollectionViewLayoutAttributes]()) { (prev, cur) in + var res = prev + if let last = prev[cur.indexPath.section] { + if last.indexPath.row < cur.indexPath.row && last.indexPath.section == cur.indexPath.section { + res[cur.indexPath.section] = cur + } + } else { + res[cur.indexPath.section] = cur + } + return res + } + + parallaxHeaderOnScreen = rect.minY <= 0 || parallaxHeaderAlwaysOnTop + + visibleHeaders.forEach { $0.zIndex = 1024 } + + visibleCells.forEach { $0.zIndex = 1 } + + if parallaxHeaderOnScreen && !CGSize.zero.equalTo(self.parallaxHeaderReferenceSize) { + let currentAttributes = CSStickyHeaderFlowLayoutAttributes(forSupplementaryViewOfKind: CSStickyHeaderParallaxHeader, with: IndexPath(index: 0)) + updateParallaxHeaderAttributes(currentAttributes) + + retVal[currentAttributes.indexPath] = currentAttributes + } + + if !disableStickyHeaders { + visibleHeaders = visibleHeaders.flatMap { (header) in + guard let lastCell = lastCells[header.indexPath.section] else { + return nil + } + + return self.getAdjustedHeaderAttributesForLastCell(header, lastCellAttributes: lastCell) + } + } + + + return Array(retVal.values) + visibleCells + visibleHeaders + otherVisibleItems + } + + open override func layoutAttributesForItem(at indexPath: IndexPath) -> UICollectionViewLayoutAttributes? { + guard let attributes = super.layoutAttributesForItem(at: indexPath)?.copy() as? UICollectionViewLayoutAttributes else { + return nil + } + + attributes.frame = CGRect( + origin: CGPoint(x: attributes.frame.origin.x, y: attributes.frame.origin.y + self.parallaxHeaderReferenceSize.height), + size: attributes.frame.size + ) + + return attributes + } + + open override var collectionViewContentSize : CGSize { + guard let _ = self.collectionView?.superview else { + return .zero + } + + let size = super.collectionViewContentSize + return CGSize(width: size.width, height: size.height + self.parallaxHeaderReferenceSize.height) + } + + open override func shouldInvalidateLayout(forBoundsChange newBounds: CGRect) -> Bool { + return true + } + + // MARK: Private Methods + + fileprivate func getAdjustedHeaderAttributesForLastCell(_ attributes: UICollectionViewLayoutAttributes, lastCellAttributes: UICollectionViewLayoutAttributes) -> UICollectionViewLayoutAttributes? { + guard let collectionView = self.collectionView, let newAttributes = attributes.copy() as? UICollectionViewLayoutAttributes else { + return nil + } + + let currentBounds = collectionView.bounds + + var origin = attributes.frame.origin + let sectionMaxY = lastCellAttributes.frame.maxY - attributes.frame.size.height + var y = currentBounds.maxY - currentBounds.size.height + collectionView.contentInset.top + + if self.parallaxHeaderAlwaysOnTop { + y += parallaxHeaderMinimumReferenceSize.height + } + + origin.y = min(max(y, attributes.frame.origin.y), sectionMaxY) + + newAttributes.isHidden = false + newAttributes.frame = CGRect(origin: origin, size: attributes.frame.size) + + return newAttributes + } + + fileprivate func updateParallaxHeaderAttributes(_ attributes: CSStickyHeaderFlowLayoutAttributes) { + + guard let collectionView = self.collectionView else { + return + } + + var frame = attributes.frame + frame.size = parallaxHeaderReferenceSize + let bounds = collectionView.bounds + let maxY = frame.maxY + + var y = min(maxY - self.parallaxHeaderMinimumReferenceSize.height, bounds.origin.y + collectionView.contentInset.top) + + let height = max(0, -y + maxY) + + let maxHeight = parallaxHeaderReferenceSize.height + let minHeight = parallaxHeaderMinimumReferenceSize.height + + attributes.progressiveness = (height - minHeight) / (maxHeight - minHeight) + attributes.zIndex = 0 + + if self.parallaxHeaderAlwaysOnTop && height <= parallaxHeaderMinimumReferenceSize.height { + let insetTop = collectionView.contentInset.top + y = collectionView.contentOffset.y + insetTop + attributes.zIndex = 2000 + } + + attributes.frame = CGRect( + x: frame.origin.x, + y: y, + width: frame.size.width, + height: self.disableStretching && height > maxHeight ? maxHeight : height) + } + + // MARK: Overrides + + open override class var layoutAttributesClass : AnyClass { + return CSStickyHeaderFlowLayoutAttributes.self + } +} diff --git a/Classes/CSStickyHeaderFlowLayoutAttributes.h b/Classes/CSStickyHeaderFlowLayoutAttributes.h deleted file mode 100644 index cae6001..0000000 --- a/Classes/CSStickyHeaderFlowLayoutAttributes.h +++ /dev/null @@ -1,16 +0,0 @@ -/* - * This file is part of the CSStickyHeaderFlowLayout package. - * (c) James Tang - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -#import - -@interface CSStickyHeaderFlowLayoutAttributes : UICollectionViewLayoutAttributes - -// 0 = minimized, 1 = fully expanded, > 1 = stretched -@property (nonatomic) CGFloat progressiveness; - -@end diff --git a/Classes/CSStickyHeaderFlowLayoutAttributes.m b/Classes/CSStickyHeaderFlowLayoutAttributes.m deleted file mode 100644 index 39e261c..0000000 --- a/Classes/CSStickyHeaderFlowLayoutAttributes.m +++ /dev/null @@ -1,33 +0,0 @@ -/* - * This file is part of the CSStickyHeaderFlowLayout package. - * (c) James Tang - * - * For the full copyright and license information, please view the LICENSE - * file that was distributed with this source code. - */ - -#import "CSStickyHeaderFlowLayoutAttributes.h" - -@implementation CSStickyHeaderFlowLayoutAttributes - -- (id)copyWithZone:(NSZone *)zone { - typeof(self) copy = [super copyWithZone:zone]; - copy.progressiveness = self.progressiveness; - return copy; -} - -- (void)setZIndex:(NSInteger)zIndex { - [super setZIndex:zIndex]; - - // Fixes: Section header go behind cell when insert via performBatchUpdates #68 - // https://github.com/jamztang/CSStickyHeaderFlowLayout/issues/68#issuecomment-108678022 - // Reference: UICollectionView setLayout:animated: not preserving zIndex - // http://stackoverflow.com/questions/12659301/uicollectionview-setlayoutanimated-not-preserving-zindex - - // originally our solution is to translate the section header above the original z position, - // however, scroll indicator will be covered by those cells and section header if z position is >= 1 - // so instead we translate the original cell to be -1, and make sure the cell are hit test proven. - self.transform3D = CATransform3DMakeTranslation(0, 0, zIndex == 1 ? -1 : 0); -} - -@end diff --git a/Classes/CSStickyHeaderFlowLayoutAttributes.swift b/Classes/CSStickyHeaderFlowLayoutAttributes.swift new file mode 100644 index 0000000..c9c7f5e --- /dev/null +++ b/Classes/CSStickyHeaderFlowLayoutAttributes.swift @@ -0,0 +1,30 @@ +// +// CSStickyHeaderFlowLayoutAttributes.swift +// CSStickyHeaderFlowLayoutDemo +// +// Created by Christian Enevoldsen on 13/09/16. +// Copyright © 2016 Jamz Tang. All rights reserved. +// + +import UIKit + +open class CSStickyHeaderFlowLayoutAttributes: UICollectionViewLayoutAttributes { + + open var progressiveness = CGFloat(0) + + open override func copy(with zone: NSZone?) -> Any { + let copy = super.copy(with: zone) + guard let typedCopy = copy as? CSStickyHeaderFlowLayoutAttributes else { + return copy + } + + typedCopy.progressiveness = self.progressiveness + return typedCopy + } + + open override var zIndex: Int { + didSet { + self.transform3D = CATransform3DMakeTranslation(0, 0, zIndex == 1 ? -1 : 0) + } + } +} diff --git a/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcodeproj/project.pbxproj b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcodeproj/project.pbxproj new file mode 100644 index 0000000..1b11e6e --- /dev/null +++ b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcodeproj/project.pbxproj @@ -0,0 +1,404 @@ +// !$*UTF8*$! +{ + archiveVersion = 1; + classes = { + }; + objectVersion = 46; + objects = { + +/* Begin PBXBuildFile section */ + AF8F65831D886C04000961BD /* CSStickyHeaderFlowLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = AF8F65821D886C04000961BD /* CSStickyHeaderFlowLayout.h */; settings = {ATTRIBUTES = (Public, ); }; }; + AF8F658A1D886C04000961BD /* CSStickyHeaderFlowLayout.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = AF8F657F1D886C04000961BD /* CSStickyHeaderFlowLayout.framework */; }; + AF8F658F1D886C04000961BD /* CSStickyHeaderFlowLayoutTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF8F658E1D886C04000961BD /* CSStickyHeaderFlowLayoutTests.swift */; }; + AF8F659B1D886C5D000961BD /* CSStickyHeaderFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF8F65991D886C5D000961BD /* CSStickyHeaderFlowLayout.swift */; }; + AF8F659C1D886C5D000961BD /* CSStickyHeaderFlowLayoutAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = AF8F659A1D886C5D000961BD /* CSStickyHeaderFlowLayoutAttributes.swift */; }; +/* End PBXBuildFile section */ + +/* Begin PBXContainerItemProxy section */ + AF8F658B1D886C04000961BD /* PBXContainerItemProxy */ = { + isa = PBXContainerItemProxy; + containerPortal = AF8F65761D886C04000961BD /* Project object */; + proxyType = 1; + remoteGlobalIDString = AF8F657E1D886C04000961BD; + remoteInfo = CSStickyHeaderFlowLayout; + }; +/* End PBXContainerItemProxy section */ + +/* Begin PBXFileReference section */ + AF8F657F1D886C04000961BD /* CSStickyHeaderFlowLayout.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CSStickyHeaderFlowLayout.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + AF8F65821D886C04000961BD /* CSStickyHeaderFlowLayout.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CSStickyHeaderFlowLayout.h; sourceTree = ""; }; + AF8F65841D886C04000961BD /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + AF8F65891D886C04000961BD /* CSStickyHeaderFlowLayoutTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CSStickyHeaderFlowLayoutTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; + AF8F658E1D886C04000961BD /* CSStickyHeaderFlowLayoutTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CSStickyHeaderFlowLayoutTests.swift; sourceTree = ""; }; + AF8F65901D886C04000961BD /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + AF8F65991D886C5D000961BD /* CSStickyHeaderFlowLayout.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = CSStickyHeaderFlowLayout.swift; path = ../../../Classes/CSStickyHeaderFlowLayout.swift; sourceTree = ""; }; + AF8F659A1D886C5D000961BD /* CSStickyHeaderFlowLayoutAttributes.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; name = CSStickyHeaderFlowLayoutAttributes.swift; path = ../../../Classes/CSStickyHeaderFlowLayoutAttributes.swift; sourceTree = ""; }; +/* End PBXFileReference section */ + +/* Begin PBXFrameworksBuildPhase section */ + AF8F657B1D886C04000961BD /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + AF8F65861D886C04000961BD /* Frameworks */ = { + isa = PBXFrameworksBuildPhase; + buildActionMask = 2147483647; + files = ( + AF8F658A1D886C04000961BD /* CSStickyHeaderFlowLayout.framework in Frameworks */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXFrameworksBuildPhase section */ + +/* Begin PBXGroup section */ + AF8F65751D886C04000961BD = { + isa = PBXGroup; + children = ( + AF8F65811D886C04000961BD /* CSStickyHeaderFlowLayout */, + AF8F658D1D886C04000961BD /* CSStickyHeaderFlowLayoutTests */, + AF8F65801D886C04000961BD /* Products */, + ); + sourceTree = ""; + }; + AF8F65801D886C04000961BD /* Products */ = { + isa = PBXGroup; + children = ( + AF8F657F1D886C04000961BD /* CSStickyHeaderFlowLayout.framework */, + AF8F65891D886C04000961BD /* CSStickyHeaderFlowLayoutTests.xctest */, + ); + name = Products; + sourceTree = ""; + }; + AF8F65811D886C04000961BD /* CSStickyHeaderFlowLayout */ = { + isa = PBXGroup; + children = ( + AF8F65991D886C5D000961BD /* CSStickyHeaderFlowLayout.swift */, + AF8F659A1D886C5D000961BD /* CSStickyHeaderFlowLayoutAttributes.swift */, + AF8F65821D886C04000961BD /* CSStickyHeaderFlowLayout.h */, + AF8F65841D886C04000961BD /* Info.plist */, + ); + path = CSStickyHeaderFlowLayout; + sourceTree = ""; + }; + AF8F658D1D886C04000961BD /* CSStickyHeaderFlowLayoutTests */ = { + isa = PBXGroup; + children = ( + AF8F658E1D886C04000961BD /* CSStickyHeaderFlowLayoutTests.swift */, + AF8F65901D886C04000961BD /* Info.plist */, + ); + path = CSStickyHeaderFlowLayoutTests; + sourceTree = ""; + }; +/* End PBXGroup section */ + +/* Begin PBXHeadersBuildPhase section */ + AF8F657C1D886C04000961BD /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + AF8F65831D886C04000961BD /* CSStickyHeaderFlowLayout.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXHeadersBuildPhase section */ + +/* Begin PBXNativeTarget section */ + AF8F657E1D886C04000961BD /* CSStickyHeaderFlowLayout */ = { + isa = PBXNativeTarget; + buildConfigurationList = AF8F65931D886C04000961BD /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayout" */; + buildPhases = ( + AF8F657A1D886C04000961BD /* Sources */, + AF8F657B1D886C04000961BD /* Frameworks */, + AF8F657C1D886C04000961BD /* Headers */, + AF8F657D1D886C04000961BD /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + ); + name = CSStickyHeaderFlowLayout; + productName = CSStickyHeaderFlowLayout; + productReference = AF8F657F1D886C04000961BD /* CSStickyHeaderFlowLayout.framework */; + productType = "com.apple.product-type.framework"; + }; + AF8F65881D886C04000961BD /* CSStickyHeaderFlowLayoutTests */ = { + isa = PBXNativeTarget; + buildConfigurationList = AF8F65961D886C04000961BD /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutTests" */; + buildPhases = ( + AF8F65851D886C04000961BD /* Sources */, + AF8F65861D886C04000961BD /* Frameworks */, + AF8F65871D886C04000961BD /* Resources */, + ); + buildRules = ( + ); + dependencies = ( + AF8F658C1D886C04000961BD /* PBXTargetDependency */, + ); + name = CSStickyHeaderFlowLayoutTests; + productName = CSStickyHeaderFlowLayoutTests; + productReference = AF8F65891D886C04000961BD /* CSStickyHeaderFlowLayoutTests.xctest */; + productType = "com.apple.product-type.bundle.unit-test"; + }; +/* End PBXNativeTarget section */ + +/* Begin PBXProject section */ + AF8F65761D886C04000961BD /* Project object */ = { + isa = PBXProject; + attributes = { + LastSwiftUpdateCheck = 0730; + LastUpgradeCheck = 0730; + ORGANIZATIONNAME = CSStickyHeaderFlowLayout; + TargetAttributes = { + AF8F657E1D886C04000961BD = { + CreatedOnToolsVersion = 7.3.1; + }; + AF8F65881D886C04000961BD = { + CreatedOnToolsVersion = 7.3.1; + }; + }; + }; + buildConfigurationList = AF8F65791D886C04000961BD /* Build configuration list for PBXProject "CSStickyHeaderFlowLayout" */; + compatibilityVersion = "Xcode 3.2"; + developmentRegion = English; + hasScannedForEncodings = 0; + knownRegions = ( + en, + ); + mainGroup = AF8F65751D886C04000961BD; + productRefGroup = AF8F65801D886C04000961BD /* Products */; + projectDirPath = ""; + projectRoot = ""; + targets = ( + AF8F657E1D886C04000961BD /* CSStickyHeaderFlowLayout */, + AF8F65881D886C04000961BD /* CSStickyHeaderFlowLayoutTests */, + ); + }; +/* End PBXProject section */ + +/* Begin PBXResourcesBuildPhase section */ + AF8F657D1D886C04000961BD /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; + AF8F65871D886C04000961BD /* Resources */ = { + isa = PBXResourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXSourcesBuildPhase section */ + AF8F657A1D886C04000961BD /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + AF8F659C1D886C5D000961BD /* CSStickyHeaderFlowLayoutAttributes.swift in Sources */, + AF8F659B1D886C5D000961BD /* CSStickyHeaderFlowLayout.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + AF8F65851D886C04000961BD /* Sources */ = { + isa = PBXSourcesBuildPhase; + buildActionMask = 2147483647; + files = ( + AF8F658F1D886C04000961BD /* CSStickyHeaderFlowLayoutTests.swift in Sources */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; +/* End PBXSourcesBuildPhase section */ + +/* Begin PBXTargetDependency section */ + AF8F658C1D886C04000961BD /* PBXTargetDependency */ = { + isa = PBXTargetDependency; + target = AF8F657E1D886C04000961BD /* CSStickyHeaderFlowLayout */; + targetProxy = AF8F658B1D886C04000961BD /* PBXContainerItemProxy */; + }; +/* End PBXTargetDependency section */ + +/* Begin XCBuildConfiguration section */ + AF8F65911D886C04000961BD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + ENABLE_STRICT_OBJC_MSGSEND = YES; + ENABLE_TESTABILITY = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "DEBUG=1", + "$(inherited)", + ); + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.3; + MTL_ENABLE_DEBUG_INFO = YES; + ONLY_ACTIVE_ARCH = YES; + SDKROOT = iphoneos; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + AF8F65921D886C04000961BD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; + CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; + CLANG_CXX_LIBRARY = "libc++"; + CLANG_ENABLE_MODULES = YES; + CLANG_ENABLE_OBJC_ARC = YES; + CLANG_WARN_BOOL_CONVERSION = YES; + CLANG_WARN_CONSTANT_CONVERSION = YES; + CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; + CLANG_WARN_EMPTY_BODY = YES; + CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INT_CONVERSION = YES; + CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_UNREACHABLE_CODE = YES; + CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + COPY_PHASE_STRIP = NO; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; + GCC_WARN_64_TO_32_BIT_CONVERSION = YES; + GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; + GCC_WARN_UNDECLARED_SELECTOR = YES; + GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; + GCC_WARN_UNUSED_FUNCTION = YES; + GCC_WARN_UNUSED_VARIABLE = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.3; + MTL_ENABLE_DEBUG_INFO = NO; + SDKROOT = iphoneos; + TARGETED_DEVICE_FAMILY = "1,2"; + VALIDATE_PRODUCT = YES; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + AF8F65941D886C04000961BD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = CSStickyHeaderFlowLayout/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.csstickyheaderflowlayout.CSStickyHeaderFlowLayout; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + }; + name = Debug; + }; + AF8F65951D886C04000961BD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + CLANG_ENABLE_MODULES = YES; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + INFOPLIST_FILE = CSStickyHeaderFlowLayout/Info.plist; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.csstickyheaderflowlayout.CSStickyHeaderFlowLayout; + PRODUCT_NAME = "$(TARGET_NAME)"; + SKIP_INSTALL = YES; + }; + name = Release; + }; + AF8F65971D886C04000961BD /* Debug */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = CSStickyHeaderFlowLayoutTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.csstickyheaderflowlayout.CSStickyHeaderFlowLayoutTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Debug; + }; + AF8F65981D886C04000961BD /* Release */ = { + isa = XCBuildConfiguration; + buildSettings = { + INFOPLIST_FILE = CSStickyHeaderFlowLayoutTests/Info.plist; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + PRODUCT_BUNDLE_IDENTIFIER = com.csstickyheaderflowlayout.CSStickyHeaderFlowLayoutTests; + PRODUCT_NAME = "$(TARGET_NAME)"; + }; + name = Release; + }; +/* End XCBuildConfiguration section */ + +/* Begin XCConfigurationList section */ + AF8F65791D886C04000961BD /* Build configuration list for PBXProject "CSStickyHeaderFlowLayout" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + AF8F65911D886C04000961BD /* Debug */, + AF8F65921D886C04000961BD /* Release */, + ); + defaultConfigurationIsVisible = 0; + defaultConfigurationName = Release; + }; + AF8F65931D886C04000961BD /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayout" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + AF8F65941D886C04000961BD /* Debug */, + AF8F65951D886C04000961BD /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; + AF8F65961D886C04000961BD /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutTests" */ = { + isa = XCConfigurationList; + buildConfigurations = ( + AF8F65971D886C04000961BD /* Debug */, + AF8F65981D886C04000961BD /* Release */, + ); + defaultConfigurationIsVisible = 0; + }; +/* End XCConfigurationList section */ + }; + rootObject = AF8F65761D886C04000961BD /* Project object */; +} diff --git a/Project/CSStickyHeaderFlowLayoutDemo.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayoutCarthage.xcscheme b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayout.xcscheme similarity index 61% rename from Project/CSStickyHeaderFlowLayoutDemo.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayoutCarthage.xcscheme rename to Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayout.xcscheme index 543f210..98ad99c 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayoutCarthage.xcscheme +++ b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayout.xcscheme @@ -14,10 +14,10 @@ buildForAnalyzing = "YES"> + BlueprintIdentifier = "AF8F657E1D886C04000961BD" + BuildableName = "CSStickyHeaderFlowLayout.framework" + BlueprintName = "CSStickyHeaderFlowLayout" + ReferencedContainer = "container:CSStickyHeaderFlowLayout.xcodeproj"> @@ -28,7 +28,26 @@ selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" shouldUseLaunchSchemeArgsEnv = "YES"> + + + + + + + + @@ -45,10 +64,10 @@ + BlueprintIdentifier = "AF8F657E1D886C04000961BD" + BuildableName = "CSStickyHeaderFlowLayout.framework" + BlueprintName = "CSStickyHeaderFlowLayout" + ReferencedContainer = "container:CSStickyHeaderFlowLayout.xcodeproj"> @@ -63,10 +82,10 @@ + BlueprintIdentifier = "AF8F657E1D886C04000961BD" + BuildableName = "CSStickyHeaderFlowLayout.framework" + BlueprintName = "CSStickyHeaderFlowLayout" + ReferencedContainer = "container:CSStickyHeaderFlowLayout.xcodeproj"> diff --git a/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h similarity index 69% rename from Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h rename to Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h index 8bc4428..559821e 100644 --- a/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h +++ b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h @@ -2,8 +2,8 @@ // CSStickyHeaderFlowLayout.h // CSStickyHeaderFlowLayout // -// Created by James Tang on 16/7/15. -// Copyright (c) 2015 Jamz Tang. All rights reserved. +// Created by Christian Enevoldsen on 13/09/16. +// Copyright © 2016 CSStickyHeaderFlowLayout. All rights reserved. // #import @@ -17,5 +17,3 @@ FOUNDATION_EXPORT const unsigned char CSStickyHeaderFlowLayoutVersionString[]; // In this header, you should import all the public headers of your framework using statements like #import -#import -#import \ No newline at end of file diff --git a/Project/CSStickyHeaderFlowLayout/Info.plist b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout/Info.plist similarity index 100% rename from Project/CSStickyHeaderFlowLayout/Info.plist rename to Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout/Info.plist diff --git a/Project/CSStickyHeaderFlowLayoutTests/CSStickyHeaderFlowLayoutTests.swift b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutTests/CSStickyHeaderFlowLayoutTests.swift similarity index 73% rename from Project/CSStickyHeaderFlowLayoutTests/CSStickyHeaderFlowLayoutTests.swift rename to Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutTests/CSStickyHeaderFlowLayoutTests.swift index 7bd858e..fd14dd5 100644 --- a/Project/CSStickyHeaderFlowLayoutTests/CSStickyHeaderFlowLayoutTests.swift +++ b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutTests/CSStickyHeaderFlowLayoutTests.swift @@ -2,12 +2,12 @@ // CSStickyHeaderFlowLayoutTests.swift // CSStickyHeaderFlowLayoutTests // -// Created by James Tang on 16/7/15. -// Copyright (c) 2015 Jamz Tang. All rights reserved. +// Created by Christian Enevoldsen on 13/09/16. +// Copyright © 2016 CSStickyHeaderFlowLayout. All rights reserved. // -import UIKit import XCTest +@testable import CSStickyHeaderFlowLayout class CSStickyHeaderFlowLayoutTests: XCTestCase { @@ -23,12 +23,12 @@ class CSStickyHeaderFlowLayoutTests: XCTestCase { func testExample() { // This is an example of a functional test case. - XCTAssert(true, "Pass") + // Use XCTAssert and related functions to verify your tests produce the correct results. } func testPerformanceExample() { // This is an example of a performance test case. - self.measureBlock() { + self.measureBlock { // Put the code you want to measure the time of here. } } diff --git a/Project/CSStickyHeaderFlowLayoutTests/Info.plist b/Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutTests/Info.plist similarity index 100% rename from Project/CSStickyHeaderFlowLayoutTests/Info.plist rename to Project/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutTests/Info.plist diff --git a/Project/CSStickyHeaderFlowLayoutCarthage/CSStickyHeaderFlowLayoutCarthage.h b/Project/CSStickyHeaderFlowLayoutCarthage/CSStickyHeaderFlowLayoutCarthage.h deleted file mode 100644 index d3de69d..0000000 --- a/Project/CSStickyHeaderFlowLayoutCarthage/CSStickyHeaderFlowLayoutCarthage.h +++ /dev/null @@ -1,19 +0,0 @@ -// -// CSStickyHeaderFlowLayoutCarthage.h -// CSStickyHeaderFlowLayoutCarthage -// -// Created by Christian Enevoldsen on 16/08/16. -// Copyright © 2016 Jamz Tang. All rights reserved. -// - -#import - -//! Project version number for CSStickyHeaderFlowLayoutCarthage. -FOUNDATION_EXPORT double CSStickyHeaderFlowLayoutCarthageVersionNumber; - -//! Project version string for CSStickyHeaderFlowLayoutCarthage. -FOUNDATION_EXPORT const unsigned char CSStickyHeaderFlowLayoutCarthageVersionString[]; - -// In this header, you should import all the public headers of your framework using statements like #import - - diff --git a/Project/CSStickyHeaderFlowLayoutCarthage/Info.plist b/Project/CSStickyHeaderFlowLayoutCarthage/Info.plist deleted file mode 100644 index d3de8ee..0000000 --- a/Project/CSStickyHeaderFlowLayoutCarthage/Info.plist +++ /dev/null @@ -1,26 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - $(CURRENT_PROJECT_VERSION) - NSPrincipalClass - - - diff --git a/Project/CSStickyHeaderFlowLayoutDemo.xcodeproj/project.pbxproj b/Project/CSStickyHeaderFlowLayoutDemo.xcodeproj/project.pbxproj index 05e7bc1..05139c7 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo.xcodeproj/project.pbxproj +++ b/Project/CSStickyHeaderFlowLayoutDemo.xcodeproj/project.pbxproj @@ -14,12 +14,6 @@ 1A14657818F13832003B643B /* CSStickyParallaxHeaderViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A14657718F13832003B643B /* CSStickyParallaxHeaderViewController.m */; }; 1A18AE5518F18764003DC8CF /* CSAlwaysOnTopHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1A18AE5418F18764003DC8CF /* CSAlwaysOnTopHeader.xib */; }; 1A18AE5818F1947B003DC8CF /* CSAlwaysOnTopHeader.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A18AE5718F1947B003DC8CF /* CSAlwaysOnTopHeader.m */; }; - 1A4B2F601B56C539007F67CC /* CSStickyHeaderFlowLayout.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1A4B2F551B56C539007F67CC /* CSStickyHeaderFlowLayout.framework */; }; - 1A4B2F691B56C539007F67CC /* CSStickyHeaderFlowLayoutTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A4B2F681B56C539007F67CC /* CSStickyHeaderFlowLayoutTests.swift */; }; - 1A4B2F791B56C5A6007F67CC /* CSStickyHeaderFlowLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A4B2F751B56C5A6007F67CC /* CSStickyHeaderFlowLayout.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1A4B2F7A1B56C5A6007F67CC /* CSStickyHeaderFlowLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A4B2F761B56C5A6007F67CC /* CSStickyHeaderFlowLayout.m */; }; - 1A4B2F7B1B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A4B2F771B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 1A4B2F7C1B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A4B2F781B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.m */; }; 1AC0D88518AA38380072B3F1 /* CSParallaxHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1AC0D88418AA38380072B3F1 /* CSParallaxHeader.xib */; }; 1AC0D88718AA39B50072B3F1 /* MapKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1AC0D88618AA39B50072B3F1 /* MapKit.framework */; }; 1AC0D88918AA3AF80072B3F1 /* CSSearchBarHeader.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1AC0D88818AA3AF80072B3F1 /* CSSearchBarHeader.xib */; }; @@ -34,44 +28,10 @@ 1AFE0969187D677000CA880A /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 1AFE0967187D677000CA880A /* Main.storyboard */; }; 1AFE096C187D677000CA880A /* CSParallaxHeaderViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AFE096B187D677000CA880A /* CSParallaxHeaderViewController.m */; }; 1AFE096E187D677000CA880A /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1AFE096D187D677000CA880A /* Images.xcassets */; }; - 1AFE0975187D677000CA880A /* XCTest.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1AFE0974187D677000CA880A /* XCTest.framework */; }; - 1AFE0976187D677000CA880A /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1AFE0955187D677000CA880A /* Foundation.framework */; }; - 1AFE0977187D677000CA880A /* UIKit.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1AFE0959187D677000CA880A /* UIKit.framework */; }; - 1AFE097F187D677000CA880A /* InfoPlist.strings in Resources */ = {isa = PBXBuildFile; fileRef = 1AFE097D187D677000CA880A /* InfoPlist.strings */; }; - 1AFE0981187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AFE0980187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests.m */; }; 1AFE0992187D688300CA880A /* CSCell.m in Sources */ = {isa = PBXBuildFile; fileRef = 1AFE0991187D688300CA880A /* CSCell.m */; }; - AF1D0D491D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage.h in Headers */ = {isa = PBXBuildFile; fileRef = AF1D0D481D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage.h */; settings = {ATTRIBUTES = (Public, ); }; }; - AF1D0D4E1D6320A800F9FA68 /* CSStickyHeaderFlowLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A4B2F761B56C5A6007F67CC /* CSStickyHeaderFlowLayout.m */; }; - AF1D0D4F1D6320A800F9FA68 /* CSStickyHeaderFlowLayoutAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = 1A4B2F781B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.m */; }; - AF1D0D501D6320B100F9FA68 /* CSStickyHeaderFlowLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A4B2F751B56C5A6007F67CC /* CSStickyHeaderFlowLayout.h */; settings = {ATTRIBUTES = (Public, ); }; }; - AF1D0D511D6320B100F9FA68 /* CSStickyHeaderFlowLayoutAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = 1A4B2F771B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.h */; settings = {ATTRIBUTES = (Public, ); }; }; - B36BC395070946668DCF2AFF /* libPods.a in Frameworks */ = {isa = PBXBuildFile; fileRef = 491370024AF54DD8BFB773DA /* libPods.a */; }; + C74CBD50029E0337A7EE0F88 /* Pods_CSStickyHeaderFlowLayoutDemo.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 8417604E4BA3893CF506DC77 /* Pods_CSStickyHeaderFlowLayoutDemo.framework */; }; /* End PBXBuildFile section */ -/* Begin PBXContainerItemProxy section */ - 1A4B2F611B56C539007F67CC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1AFE094A187D677000CA880A /* Project object */; - proxyType = 1; - remoteGlobalIDString = 1A4B2F541B56C539007F67CC; - remoteInfo = CSStickyHeaderFlowLayout; - }; - 1A4B2F631B56C539007F67CC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1AFE094A187D677000CA880A /* Project object */; - proxyType = 1; - remoteGlobalIDString = 1AFE0951187D677000CA880A; - remoteInfo = CSStickyHeaderFlowLayoutDemo; - }; - 1AFE0978187D677000CA880A /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1AFE094A187D677000CA880A /* Project object */; - proxyType = 1; - remoteGlobalIDString = 1AFE0951187D677000CA880A; - remoteInfo = CSStickyHeaderFlowLayoutDemo; - }; -/* End PBXContainerItemProxy section */ - /* Begin PBXCopyFilesBuildPhase section */ 1A4B2F6D1B56C539007F67CC /* Embed Frameworks */ = { isa = PBXCopyFilesBuildPhase; @@ -97,15 +57,6 @@ 1A18AE5418F18764003DC8CF /* CSAlwaysOnTopHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CSAlwaysOnTopHeader.xib; sourceTree = ""; }; 1A18AE5618F1947B003DC8CF /* CSAlwaysOnTopHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSAlwaysOnTopHeader.h; sourceTree = ""; }; 1A18AE5718F1947B003DC8CF /* CSAlwaysOnTopHeader.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CSAlwaysOnTopHeader.m; sourceTree = ""; }; - 1A4B2F551B56C539007F67CC /* CSStickyHeaderFlowLayout.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CSStickyHeaderFlowLayout.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 1A4B2F581B56C539007F67CC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 1A4B2F5F1B56C539007F67CC /* CSStickyHeaderFlowLayoutTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CSStickyHeaderFlowLayoutTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 1A4B2F671B56C539007F67CC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 1A4B2F681B56C539007F67CC /* CSStickyHeaderFlowLayoutTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CSStickyHeaderFlowLayoutTests.swift; sourceTree = ""; }; - 1A4B2F751B56C5A6007F67CC /* CSStickyHeaderFlowLayout.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CSStickyHeaderFlowLayout.h; path = ../../Classes/CSStickyHeaderFlowLayout.h; sourceTree = ""; }; - 1A4B2F761B56C5A6007F67CC /* CSStickyHeaderFlowLayout.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CSStickyHeaderFlowLayout.m; path = ../../Classes/CSStickyHeaderFlowLayout.m; sourceTree = ""; }; - 1A4B2F771B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; name = CSStickyHeaderFlowLayoutAttributes.h; path = ../../Classes/CSStickyHeaderFlowLayoutAttributes.h; sourceTree = ""; }; - 1A4B2F781B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; name = CSStickyHeaderFlowLayoutAttributes.m; path = ../../Classes/CSStickyHeaderFlowLayoutAttributes.m; sourceTree = ""; }; 1AC0D88418AA38380072B3F1 /* CSParallaxHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CSParallaxHeader.xib; sourceTree = ""; }; 1AC0D88618AA39B50072B3F1 /* MapKit.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = MapKit.framework; path = System/Library/Frameworks/MapKit.framework; sourceTree = SDKROOT; }; 1AC0D88818AA3AF80072B3F1 /* CSSearchBarHeader.xib */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = file.xib; path = CSSearchBarHeader.xib; sourceTree = ""; }; @@ -127,39 +78,15 @@ 1AFE096A187D677000CA880A /* CSParallaxHeaderViewController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CSParallaxHeaderViewController.h; sourceTree = ""; }; 1AFE096B187D677000CA880A /* CSParallaxHeaderViewController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CSParallaxHeaderViewController.m; sourceTree = ""; }; 1AFE096D187D677000CA880A /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - 1AFE0973187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = CSStickyHeaderFlowLayoutDemoTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; 1AFE0974187D677000CA880A /* XCTest.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = XCTest.framework; path = Library/Frameworks/XCTest.framework; sourceTree = DEVELOPER_DIR; }; - 1AFE097C187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests-Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = "CSStickyHeaderFlowLayoutDemoTests-Info.plist"; sourceTree = ""; }; - 1AFE097E187D677000CA880A /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/InfoPlist.strings; sourceTree = ""; }; - 1AFE0980187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = CSStickyHeaderFlowLayoutDemoTests.m; sourceTree = ""; }; 1AFE0990187D688300CA880A /* CSCell.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = CSCell.h; sourceTree = ""; }; 1AFE0991187D688300CA880A /* CSCell.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = CSCell.m; sourceTree = ""; }; - 229ECB0968A8A873A6AEB59D /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = "Pods/Target Support Files/Pods/Pods.release.xcconfig"; sourceTree = ""; }; - 491370024AF54DD8BFB773DA /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; }; - 58D371C1C7F562AB1D536637 /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.debug.xcconfig; path = "Pods/Target Support Files/Pods/Pods.debug.xcconfig"; sourceTree = ""; }; - 6BDE4094D41E4DE6515DF055 /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.debug.xcconfig; path = "Pods/Target Support Files/Pods/Pods.debug.xcconfig"; sourceTree = ""; }; - AD97E1BDF2B20F6336CBF8D7 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = Pods.release.xcconfig; path = "Pods/Target Support Files/Pods/Pods.release.xcconfig"; sourceTree = ""; }; - AF1D0D461D63203300F9FA68 /* CSStickyHeaderFlowLayout.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CSStickyHeaderFlowLayout.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - AF1D0D481D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CSStickyHeaderFlowLayoutCarthage.h; sourceTree = ""; }; - AF1D0D4A1D63203300F9FA68 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 80BB814ECEE90720372C6F79 /* Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig"; path = "Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig"; sourceTree = ""; }; + 8417604E4BA3893CF506DC77 /* Pods_CSStickyHeaderFlowLayoutDemo.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_CSStickyHeaderFlowLayoutDemo.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + F96FC1299AF039CDEF659CAA /* Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig"; path = "Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig"; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 1A4B2F511B56C539007F67CC /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1A4B2F5C1B56C539007F67CC /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 1A4B2F601B56C539007F67CC /* CSStickyHeaderFlowLayout.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 1AFE094F187D677000CA880A /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; @@ -168,88 +95,20 @@ 1AFE0958187D677000CA880A /* CoreGraphics.framework in Frameworks */, 1AFE095A187D677000CA880A /* UIKit.framework in Frameworks */, 1AFE0956187D677000CA880A /* Foundation.framework in Frameworks */, - B36BC395070946668DCF2AFF /* libPods.a in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1AFE0970187D677000CA880A /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 1AFE0975187D677000CA880A /* XCTest.framework in Frameworks */, - 1AFE0977187D677000CA880A /* UIKit.framework in Frameworks */, - 1AFE0976187D677000CA880A /* Foundation.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - AF1D0D421D63203300F9FA68 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( + C74CBD50029E0337A7EE0F88 /* Pods_CSStickyHeaderFlowLayoutDemo.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 034852391EBFCBDC0011D58A /* Pods */ = { - isa = PBXGroup; - children = ( - 6BDE4094D41E4DE6515DF055 /* Pods.debug.xcconfig */, - AD97E1BDF2B20F6336CBF8D7 /* Pods.release.xcconfig */, - ); - name = Pods; - path = ..; - sourceTree = ""; - }; - 1A4B2F561B56C539007F67CC /* CSStickyHeaderFlowLayout */ = { - isa = PBXGroup; - children = ( - 1A4B2F751B56C5A6007F67CC /* CSStickyHeaderFlowLayout.h */, - 1A4B2F761B56C5A6007F67CC /* CSStickyHeaderFlowLayout.m */, - 1A4B2F771B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.h */, - 1A4B2F781B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.m */, - 1A4B2F571B56C539007F67CC /* Supporting Files */, - ); - path = CSStickyHeaderFlowLayout; - sourceTree = ""; - }; - 1A4B2F571B56C539007F67CC /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 1A4B2F581B56C539007F67CC /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; - 1A4B2F651B56C539007F67CC /* CSStickyHeaderFlowLayoutTests */ = { - isa = PBXGroup; - children = ( - 1A4B2F681B56C539007F67CC /* CSStickyHeaderFlowLayoutTests.swift */, - 1A4B2F661B56C539007F67CC /* Supporting Files */, - ); - path = CSStickyHeaderFlowLayoutTests; - sourceTree = ""; - }; - 1A4B2F661B56C539007F67CC /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 1A4B2F671B56C539007F67CC /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; 1AFE0949187D677000CA880A = { isa = PBXGroup; children = ( 1AFE095B187D677000CA880A /* CSStickyHeaderFlowLayoutDemo */, - 1AFE097A187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests */, - 1A4B2F561B56C539007F67CC /* CSStickyHeaderFlowLayout */, - 1A4B2F651B56C539007F67CC /* CSStickyHeaderFlowLayoutTests */, - AF1D0D471D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage */, 1AFE0954187D677000CA880A /* Frameworks */, 1AFE0953187D677000CA880A /* Products */, - 9DDE38A70ED787DEBF9A6411 /* Pods */, + 304440674C026B828247E81F /* Pods */, ); sourceTree = ""; }; @@ -257,10 +116,6 @@ isa = PBXGroup; children = ( 1AFE0952187D677000CA880A /* CSStickyHeaderFlowLayoutDemo.app */, - 1AFE0973187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests.xctest */, - 1A4B2F551B56C539007F67CC /* CSStickyHeaderFlowLayout.framework */, - 1A4B2F5F1B56C539007F67CC /* CSStickyHeaderFlowLayoutTests.xctest */, - AF1D0D461D63203300F9FA68 /* CSStickyHeaderFlowLayout.framework */, ); name = Products; sourceTree = ""; @@ -273,7 +128,7 @@ 1AFE0957187D677000CA880A /* CoreGraphics.framework */, 1AFE0959187D677000CA880A /* UIKit.framework */, 1AFE0974187D677000CA880A /* XCTest.framework */, - 491370024AF54DD8BFB773DA /* libPods.a */, + 8417604E4BA3893CF506DC77 /* Pods_CSStickyHeaderFlowLayoutDemo.framework */, ); name = Frameworks; sourceTree = ""; @@ -304,24 +159,6 @@ name = "Supporting Files"; sourceTree = ""; }; - 1AFE097A187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests */ = { - isa = PBXGroup; - children = ( - 1AFE0980187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests.m */, - 1AFE097B187D677000CA880A /* Supporting Files */, - ); - path = CSStickyHeaderFlowLayoutDemoTests; - sourceTree = ""; - }; - 1AFE097B187D677000CA880A /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 1AFE097C187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests-Info.plist */, - 1AFE097D187D677000CA880A /* InfoPlist.strings */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; 1AFE098A187D67F500CA880A /* ViewControllers */ = { isa = PBXGroup; children = ( @@ -347,7 +184,6 @@ 1A0BCA1F1A80B25D005D9F7C /* CSSectionHeader.h */, 1A0BCA201A80B25D005D9F7C /* CSSectionHeader.m */, 1A18AE5618F1947B003DC8CF /* CSAlwaysOnTopHeader.h */, - 034852391EBFCBDC0011D58A /* Pods */, 1A18AE5718F1947B003DC8CF /* CSAlwaysOnTopHeader.m */, 1AC0D88418AA38380072B3F1 /* CSParallaxHeader.xib */, 1AC0D88818AA3AF80072B3F1 /* CSSearchBarHeader.xib */, @@ -357,96 +193,29 @@ name = Cell; sourceTree = ""; }; - 9DDE38A70ED787DEBF9A6411 /* Pods */ = { + 304440674C026B828247E81F /* Pods */ = { isa = PBXGroup; children = ( - 58D371C1C7F562AB1D536637 /* Pods.debug.xcconfig */, - 229ECB0968A8A873A6AEB59D /* Pods.release.xcconfig */, + 80BB814ECEE90720372C6F79 /* Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig */, + F96FC1299AF039CDEF659CAA /* Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig */, ); name = Pods; sourceTree = ""; }; - AF1D0D471D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage */ = { - isa = PBXGroup; - children = ( - AF1D0D481D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage.h */, - AF1D0D4A1D63203300F9FA68 /* Info.plist */, - ); - path = CSStickyHeaderFlowLayoutCarthage; - sourceTree = ""; - }; /* End PBXGroup section */ -/* Begin PBXHeadersBuildPhase section */ - 1A4B2F521B56C539007F67CC /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - 1A4B2F791B56C5A6007F67CC /* CSStickyHeaderFlowLayout.h in Headers */, - 1A4B2F7B1B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - AF1D0D431D63203300F9FA68 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - AF1D0D501D6320B100F9FA68 /* CSStickyHeaderFlowLayout.h in Headers */, - AF1D0D511D6320B100F9FA68 /* CSStickyHeaderFlowLayoutAttributes.h in Headers */, - AF1D0D491D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - /* Begin PBXNativeTarget section */ - 1A4B2F541B56C539007F67CC /* CSStickyHeaderFlowLayout */ = { - isa = PBXNativeTarget; - buildConfigurationList = 1A4B2F731B56C539007F67CC /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayout" */; - buildPhases = ( - 1A4B2F501B56C539007F67CC /* Sources */, - 1A4B2F511B56C539007F67CC /* Frameworks */, - 1A4B2F521B56C539007F67CC /* Headers */, - 1A4B2F531B56C539007F67CC /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = CSStickyHeaderFlowLayout; - productName = CSStickyHeaderFlowLayout; - productReference = 1A4B2F551B56C539007F67CC /* CSStickyHeaderFlowLayout.framework */; - productType = "com.apple.product-type.framework"; - }; - 1A4B2F5E1B56C539007F67CC /* CSStickyHeaderFlowLayoutTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 1A4B2F741B56C539007F67CC /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutTests" */; - buildPhases = ( - 1A4B2F5B1B56C539007F67CC /* Sources */, - 1A4B2F5C1B56C539007F67CC /* Frameworks */, - 1A4B2F5D1B56C539007F67CC /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 1A4B2F621B56C539007F67CC /* PBXTargetDependency */, - 1A4B2F641B56C539007F67CC /* PBXTargetDependency */, - ); - name = CSStickyHeaderFlowLayoutTests; - productName = CSStickyHeaderFlowLayoutTests; - productReference = 1A4B2F5F1B56C539007F67CC /* CSStickyHeaderFlowLayoutTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; 1AFE0951187D677000CA880A /* CSStickyHeaderFlowLayoutDemo */ = { isa = PBXNativeTarget; buildConfigurationList = 1AFE0984187D677000CA880A /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutDemo" */; buildPhases = ( - 5D2E1DC23FE5404B8BEA4738 /* Check Pods Manifest.lock */, + 8E5951F81B9585B28F31405E /* [CP] Check Pods Manifest.lock */, 1AFE094E187D677000CA880A /* Sources */, 1AFE094F187D677000CA880A /* Frameworks */, 1AFE0950187D677000CA880A /* Resources */, - D421C3C38E994F76AF2EBD05 /* Copy Pods Resources */, 1A4B2F6D1B56C539007F67CC /* Embed Frameworks */, + 9DF5EEA1C63C1B238AB1C6C5 /* [CP] Embed Pods Frameworks */, + 2713ED7E2B41E30D1153BA8B /* [CP] Copy Pods Resources */, ); buildRules = ( ); @@ -457,64 +226,18 @@ productReference = 1AFE0952187D677000CA880A /* CSStickyHeaderFlowLayoutDemo.app */; productType = "com.apple.product-type.application"; }; - 1AFE0972187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 1AFE0987187D677000CA880A /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutDemoTests" */; - buildPhases = ( - 1AFE096F187D677000CA880A /* Sources */, - 1AFE0970187D677000CA880A /* Frameworks */, - 1AFE0971187D677000CA880A /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 1AFE0979187D677000CA880A /* PBXTargetDependency */, - ); - name = CSStickyHeaderFlowLayoutDemoTests; - productName = CSStickyHeaderFlowLayoutDemoTests; - productReference = 1AFE0973187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - AF1D0D451D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage */ = { - isa = PBXNativeTarget; - buildConfigurationList = AF1D0D4D1D63203300F9FA68 /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutCarthage" */; - buildPhases = ( - AF1D0D411D63203300F9FA68 /* Sources */, - AF1D0D421D63203300F9FA68 /* Frameworks */, - AF1D0D431D63203300F9FA68 /* Headers */, - AF1D0D441D63203300F9FA68 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = CSStickyHeaderFlowLayoutCarthage; - productName = CSStickyHeaderFlowLayoutCarthage; - productReference = AF1D0D461D63203300F9FA68 /* CSStickyHeaderFlowLayout.framework */; - productType = "com.apple.product-type.framework"; - }; /* End PBXNativeTarget section */ /* Begin PBXProject section */ 1AFE094A187D677000CA880A /* Project object */ = { isa = PBXProject; attributes = { - LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0700; + LastSwiftUpdateCheck = 0730; + LastUpgradeCheck = 0800; ORGANIZATIONNAME = "Jamz Tang"; TargetAttributes = { - 1A4B2F541B56C539007F67CC = { - CreatedOnToolsVersion = 6.3.1; - }; - 1A4B2F5E1B56C539007F67CC = { - CreatedOnToolsVersion = 6.3.1; - TestTargetID = 1AFE0951187D677000CA880A; - }; - 1AFE0972187D677000CA880A = { - TestTargetID = 1AFE0951187D677000CA880A; - }; - AF1D0D451D63203300F9FA68 = { - CreatedOnToolsVersion = 7.3.1; + 1AFE0951187D677000CA880A = { + LastSwiftMigration = 0800; }; }; }; @@ -532,29 +255,11 @@ projectRoot = ""; targets = ( 1AFE0951187D677000CA880A /* CSStickyHeaderFlowLayoutDemo */, - 1AFE0972187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests */, - 1A4B2F541B56C539007F67CC /* CSStickyHeaderFlowLayout */, - 1A4B2F5E1B56C539007F67CC /* CSStickyHeaderFlowLayoutTests */, - AF1D0D451D63203300F9FA68 /* CSStickyHeaderFlowLayoutCarthage */, ); }; /* End PBXProject section */ /* Begin PBXResourcesBuildPhase section */ - 1A4B2F531B56C539007F67CC /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1A4B2F5D1B56C539007F67CC /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; 1AFE0950187D677000CA880A /* Resources */ = { isa = PBXResourcesBuildPhase; buildActionMask = 2147483647; @@ -570,32 +275,32 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 1AFE0971187D677000CA880A /* Resources */ = { - isa = PBXResourcesBuildPhase; +/* End PBXResourcesBuildPhase section */ + +/* Begin PBXShellScriptBuildPhase section */ + 2713ED7E2B41E30D1153BA8B /* [CP] Copy Pods Resources */ = { + isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( - 1AFE097F187D677000CA880A /* InfoPlist.strings in Resources */, ); - runOnlyForDeploymentPostprocessing = 0; - }; - AF1D0D441D63203300F9FA68 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( + inputPaths = ( + ); + name = "[CP] Copy Pods Resources"; + outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; + shellPath = /bin/sh; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-resources.sh\"\n"; + showEnvVarsInLog = 0; }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 5D2E1DC23FE5404B8BEA4738 /* Check Pods Manifest.lock */ = { + 8E5951F81B9585B28F31405E /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Check Pods Manifest.lock"; + name = "[CP] Check Pods Manifest.lock"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; @@ -603,41 +308,24 @@ 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"; showEnvVarsInLog = 0; }; - D421C3C38E994F76AF2EBD05 /* Copy Pods Resources */ = { + 9DF5EEA1C63C1B238AB1C6C5 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Copy Pods Resources"; + name = "[CP] Embed Pods Frameworks"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods/Pods-resources.sh\"\n"; + shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; /* End PBXShellScriptBuildPhase section */ /* Begin PBXSourcesBuildPhase section */ - 1A4B2F501B56C539007F67CC /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1A4B2F7C1B56C5A6007F67CC /* CSStickyHeaderFlowLayoutAttributes.m in Sources */, - 1A4B2F7A1B56C5A6007F67CC /* CSStickyHeaderFlowLayout.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1A4B2F5B1B56C539007F67CC /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1A4B2F691B56C539007F67CC /* CSStickyHeaderFlowLayoutTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; 1AFE094E187D677000CA880A /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; @@ -655,43 +343,8 @@ ); runOnlyForDeploymentPostprocessing = 0; }; - 1AFE096F187D677000CA880A /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1AFE0981187D677000CA880A /* CSStickyHeaderFlowLayoutDemoTests.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - AF1D0D411D63203300F9FA68 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - AF1D0D4F1D6320A800F9FA68 /* CSStickyHeaderFlowLayoutAttributes.m in Sources */, - AF1D0D4E1D6320A800F9FA68 /* CSStickyHeaderFlowLayout.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; /* End PBXSourcesBuildPhase section */ -/* Begin PBXTargetDependency section */ - 1A4B2F621B56C539007F67CC /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 1A4B2F541B56C539007F67CC /* CSStickyHeaderFlowLayout */; - targetProxy = 1A4B2F611B56C539007F67CC /* PBXContainerItemProxy */; - }; - 1A4B2F641B56C539007F67CC /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 1AFE0951187D677000CA880A /* CSStickyHeaderFlowLayoutDemo */; - targetProxy = 1A4B2F631B56C539007F67CC /* PBXContainerItemProxy */; - }; - 1AFE0979187D677000CA880A /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 1AFE0951187D677000CA880A /* CSStickyHeaderFlowLayoutDemo */; - targetProxy = 1AFE0978187D677000CA880A /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - /* Begin PBXVariantGroup section */ 1AFE095E187D677000CA880A /* InfoPlist.strings */ = { isa = PBXVariantGroup; @@ -709,126 +362,9 @@ name = Main.storyboard; sourceTree = ""; }; - 1AFE097D187D677000CA880A /* InfoPlist.strings */ = { - isa = PBXVariantGroup; - children = ( - 1AFE097E187D677000CA880A /* en */, - ); - name = InfoPlist.strings; - sourceTree = ""; - }; /* End PBXVariantGroup section */ /* Begin XCBuildConfiguration section */ - 1A4B2F6F1B56C539007F67CC /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_WARN_UNREACHABLE_CODE = YES; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = CSStickyHeaderFlowLayout/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_BUNDLE_IDENTIFIER = "com.jamztang.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - 1A4B2F701B56C539007F67CC /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = CSStickyHeaderFlowLayout/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "com.jamztang.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - 1A4B2F711B56C539007F67CC /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_WARN_UNREACHABLE_CODE = YES; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - GCC_NO_COMMON_BLOCKS = YES; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = CSStickyHeaderFlowLayoutTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_BUNDLE_IDENTIFIER = "com.jamztang.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CSStickyHeaderFlowLayoutDemo.app/CSStickyHeaderFlowLayoutDemo"; - }; - name = Debug; - }; - 1A4B2F721B56C539007F67CC /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = CSStickyHeaderFlowLayoutTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = "com.jamztang.$(PRODUCT_NAME:rfc1034identifier)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/CSStickyHeaderFlowLayoutDemo.app/CSStickyHeaderFlowLayoutDemo"; - }; - name = Release; - }; 1AFE0982187D677000CA880A /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { @@ -842,14 +378,19 @@ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; GCC_DYNAMIC_NO_PIC = NO; + GCC_NO_COMMON_BLOCKS = YES; GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( "DEBUG=1", @@ -862,7 +403,7 @@ GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 7.0; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; ONLY_ACTIVE_ARCH = YES; SDKROOT = iphoneos; }; @@ -881,20 +422,25 @@ CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; CLANG_WARN_EMPTY_BODY = YES; CLANG_WARN_ENUM_CONVERSION = YES; + CLANG_WARN_INFINITE_RECURSION = YES; CLANG_WARN_INT_CONVERSION = YES; CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; + CLANG_WARN_SUSPICIOUS_MOVE = YES; + CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; COPY_PHASE_STRIP = YES; ENABLE_NS_ASSERTIONS = NO; + ENABLE_STRICT_OBJC_MSGSEND = YES; GCC_C_LANGUAGE_STANDARD = gnu99; + GCC_NO_COMMON_BLOCKS = YES; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 7.0; + IPHONEOS_DEPLOYMENT_TARGET = 8.0; SDKROOT = iphoneos; VALIDATE_PRODUCT = YES; }; @@ -902,157 +448,45 @@ }; 1AFE0985187D677000CA880A /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 58D371C1C7F562AB1D536637 /* Pods.debug.xcconfig */; + baseConfigurationReference = 80BB814ECEE90720372C6F79 /* Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "CSStickyHeaderFlowLayoutDemo/CSStickyHeaderFlowLayoutDemo-Prefix.pch"; INFOPLIST_FILE = "CSStickyHeaderFlowLayoutDemo/CSStickyHeaderFlowLayoutDemo-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.jamztang.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 3.0; WRAPPER_EXTENSION = app; }; name = Debug; }; 1AFE0986187D677000CA880A /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = 229ECB0968A8A873A6AEB59D /* Pods.release.xcconfig */; + baseConfigurationReference = F96FC1299AF039CDEF659CAA /* Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig */; buildSettings = { + ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; ASSETCATALOG_COMPILER_LAUNCHIMAGE_NAME = LaunchImage; GCC_PRECOMPILE_PREFIX_HEADER = YES; GCC_PREFIX_HEADER = "CSStickyHeaderFlowLayoutDemo/CSStickyHeaderFlowLayoutDemo-Prefix.pch"; INFOPLIST_FILE = "CSStickyHeaderFlowLayoutDemo/CSStickyHeaderFlowLayoutDemo-Info.plist"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; PRODUCT_BUNDLE_IDENTIFIER = "com.jamztang.${PRODUCT_NAME:rfc1034identifier}"; PRODUCT_NAME = "$(TARGET_NAME)"; + SWIFT_VERSION = 3.0; WRAPPER_EXTENSION = app; }; name = Release; }; - 1AFE0988187D677000CA880A /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/CSStickyHeaderFlowLayoutDemo.app/CSStickyHeaderFlowLayoutDemo"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - "$(DEVELOPER_FRAMEWORKS_DIR)", - ); - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "CSStickyHeaderFlowLayoutDemo/CSStickyHeaderFlowLayoutDemo-Prefix.pch"; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = "CSStickyHeaderFlowLayoutDemoTests/CSStickyHeaderFlowLayoutDemoTests-Info.plist"; - PRODUCT_BUNDLE_IDENTIFIER = "com.jamztang.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUNDLE_LOADER)"; - WRAPPER_EXTENSION = xctest; - }; - name = Debug; - }; - 1AFE0989187D677000CA880A /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(BUILT_PRODUCTS_DIR)/CSStickyHeaderFlowLayoutDemo.app/CSStickyHeaderFlowLayoutDemo"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - "$(DEVELOPER_FRAMEWORKS_DIR)", - ); - GCC_PRECOMPILE_PREFIX_HEADER = YES; - GCC_PREFIX_HEADER = "CSStickyHeaderFlowLayoutDemo/CSStickyHeaderFlowLayoutDemo-Prefix.pch"; - INFOPLIST_FILE = "CSStickyHeaderFlowLayoutDemoTests/CSStickyHeaderFlowLayoutDemoTests-Info.plist"; - PRODUCT_BUNDLE_IDENTIFIER = "com.jamztang.${PRODUCT_NAME:rfc1034identifier}"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUNDLE_LOADER)"; - WRAPPER_EXTENSION = xctest; - }; - name = Release; - }; - AF1D0D4B1D63203300F9FA68 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ANALYZER_NONNULL = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = dwarf; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = CSStickyHeaderFlowLayoutCarthage/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MTL_ENABLE_DEBUG_INFO = YES; - PRODUCT_BUNDLE_IDENTIFIER = com.jamztang.CSStickyHeaderFlowLayoutFramework.CSStickyHeaderFlowLayoutCarthage; - PRODUCT_NAME = CSStickyHeaderFlowLayout; - SKIP_INSTALL = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - AF1D0D4C1D63203300F9FA68 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ANALYZER_NONNULL = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 1; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - DEFINES_MODULE = YES; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 1; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - INFOPLIST_FILE = CSStickyHeaderFlowLayoutCarthage/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - MTL_ENABLE_DEBUG_INFO = NO; - PRODUCT_BUNDLE_IDENTIFIER = com.jamztang.CSStickyHeaderFlowLayoutFramework.CSStickyHeaderFlowLayoutCarthage; - PRODUCT_NAME = CSStickyHeaderFlowLayout; - SKIP_INSTALL = YES; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 1A4B2F731B56C539007F67CC /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayout" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1A4B2F6F1B56C539007F67CC /* Debug */, - 1A4B2F701B56C539007F67CC /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 1A4B2F741B56C539007F67CC /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1A4B2F711B56C539007F67CC /* Debug */, - 1A4B2F721B56C539007F67CC /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; 1AFE094D187D677000CA880A /* Build configuration list for PBXProject "CSStickyHeaderFlowLayoutDemo" */ = { isa = XCConfigurationList; buildConfigurations = ( @@ -1071,23 +505,6 @@ defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 1AFE0987187D677000CA880A /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutDemoTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1AFE0988187D677000CA880A /* Debug */, - 1AFE0989187D677000CA880A /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - AF1D0D4D1D63203300F9FA68 /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayoutCarthage" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - AF1D0D4B1D63203300F9FA68 /* Debug */, - AF1D0D4C1D63203300F9FA68 /* Release */, - ); - defaultConfigurationIsVisible = 0; - }; /* End XCConfigurationList section */ }; rootObject = 1AFE094A187D677000CA880A /* Project object */; diff --git a/Project/CSStickyHeaderFlowLayoutDemo.xcworkspace/contents.xcworkspacedata b/Project/CSStickyHeaderFlowLayoutDemo.xcworkspace/contents.xcworkspacedata index accf9bd..e20aede 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo.xcworkspace/contents.xcworkspacedata +++ b/Project/CSStickyHeaderFlowLayoutDemo.xcworkspace/contents.xcworkspacedata @@ -1,9 +1,6 @@ - - diff --git a/Project/CSStickyHeaderFlowLayoutDemo/Base.lproj/Main.storyboard b/Project/CSStickyHeaderFlowLayoutDemo/Base.lproj/Main.storyboard index 3af57fb..8a88200 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/Base.lproj/Main.storyboard +++ b/Project/CSStickyHeaderFlowLayoutDemo/Base.lproj/Main.storyboard @@ -1,8 +1,7 @@ - + - - + @@ -13,7 +12,7 @@ - + @@ -21,7 +20,7 @@ - + @@ -30,7 +29,7 @@ @@ -128,7 +127,7 @@ - + @@ -136,7 +135,7 @@ - + @@ -145,7 +144,7 @@ @@ -209,7 +208,7 @@ - + @@ -217,7 +216,7 @@ - + @@ -226,7 +225,7 @@ @@ -289,7 +288,7 @@ - + @@ -297,7 +296,7 @@ - + diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSAlwaysOnTopHeader.m b/Project/CSStickyHeaderFlowLayoutDemo/CSAlwaysOnTopHeader.m index 47d17b2..8a71397 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSAlwaysOnTopHeader.m +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSAlwaysOnTopHeader.m @@ -7,7 +7,7 @@ // #import "CSAlwaysOnTopHeader.h" -#import "CSStickyHeaderFlowLayoutAttributes.h" +@import CSStickyHeaderFlowLayout; @implementation CSAlwaysOnTopHeader diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSAlwaysOnTopHeader.xib b/Project/CSStickyHeaderFlowLayoutDemo/CSAlwaysOnTopHeader.xib index 8a7b5d1..57aa273 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSAlwaysOnTopHeader.xib +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSAlwaysOnTopHeader.xib @@ -1,8 +1,7 @@ - + - - + @@ -39,12 +38,6 @@ - @@ -148,9 +146,4 @@ - - - - - diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSGrowHeader.xib b/Project/CSStickyHeaderFlowLayoutDemo/CSGrowHeader.xib index f786730..0982c8d 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSGrowHeader.xib +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSGrowHeader.xib @@ -1,8 +1,7 @@ - + - - + @@ -32,9 +31,4 @@ - - - - - diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSGrowHeaderViewController.m b/Project/CSStickyHeaderFlowLayoutDemo/CSGrowHeaderViewController.m index 186e175..e2047df 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSGrowHeaderViewController.m +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSGrowHeaderViewController.m @@ -9,7 +9,8 @@ #import "CSGrowHeaderViewController.h" #import "CSCell.h" #import "CSSectionHeader.h" -#import "CSStickyHeaderFlowLayout.h" + +@import CSStickyHeaderFlowLayout; @interface CSGrowHeaderViewController () @@ -47,9 +48,9 @@ - (void)viewDidLoad self.collectionView.scrollIndicatorInsets = UIEdgeInsetsMake(44, 0, 0, 0); [self.collectionView registerNib:self.headerNib - forSupplementaryViewOfKind:CSStickyHeaderParallaxHeader + forSupplementaryViewOfKind:[CSStickyHeaderFlowLayout elementKindStickyHeaderParallaxHeader] withReuseIdentifier:@"header"]; - + } - (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInterfaceOrientation duration:(NSTimeInterval)duration { @@ -101,7 +102,7 @@ - (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView cell.textLabel.text = [[obj allKeys] firstObject]; return cell; - } else if ([kind isEqualToString:CSStickyHeaderParallaxHeader]) { + } else if ([kind isEqualToString:[CSStickyHeaderFlowLayout elementKindStickyHeaderParallaxHeader]]) { UICollectionReusableView *cell = [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:@"header" forIndexPath:indexPath]; diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSLockedHeaderViewController.m b/Project/CSStickyHeaderFlowLayoutDemo/CSLockedHeaderViewController.m index d718350..ce03eaa 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSLockedHeaderViewController.m +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSLockedHeaderViewController.m @@ -9,7 +9,7 @@ #import "CSLockedHeaderViewController.h" #import "CSCell.h" #import "CSSectionHeader.h" -#import "CSStickyHeaderFlowLayout.h" +@import CSStickyHeaderFlowLayout; @interface CSLockedHeaderViewController () @@ -40,7 +40,7 @@ - (void)viewDidLoad self.collectionView.scrollIndicatorInsets = UIEdgeInsetsMake(44, 0, 0, 0); [self.collectionView registerNib:self.headerNib - forSupplementaryViewOfKind:CSStickyHeaderParallaxHeader + forSupplementaryViewOfKind:[CSStickyHeaderFlowLayout elementKindStickyHeaderParallaxHeader] withReuseIdentifier:@"header"]; UIBarButtonItem *add = [[UIBarButtonItem alloc] initWithTitle:@"Add" style:UIBarButtonItemStylePlain target:self action:@selector(add:)]; @@ -157,7 +157,7 @@ - (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView cell.textLabel.text = [[obj allKeys] firstObject]; return cell; - } else if ([kind isEqualToString:CSStickyHeaderParallaxHeader]) { + } else if ([kind isEqualToString:[CSStickyHeaderFlowLayout elementKindStickyHeaderParallaxHeader]]) { UICollectionReusableView *cell = [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:@"header" forIndexPath:indexPath]; diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSParallaxHeader.xib b/Project/CSStickyHeaderFlowLayoutDemo/CSParallaxHeader.xib index 3431f51..ac05651 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSParallaxHeader.xib +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSParallaxHeader.xib @@ -1,8 +1,7 @@ - + - - + @@ -31,9 +30,4 @@ - - - - - diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSParallaxHeaderViewController.m b/Project/CSStickyHeaderFlowLayoutDemo/CSParallaxHeaderViewController.m index 029b02b..03e9076 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSParallaxHeaderViewController.m +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSParallaxHeaderViewController.m @@ -9,7 +9,7 @@ #import "CSParallaxHeaderViewController.h" #import "CSCell.h" #import "CSSectionHeader.h" -#import "CSStickyHeaderFlowLayout.h" +@import CSStickyHeaderFlowLayout; #ifdef DEBUG_PULL_TO_REFRESH #import "MyPulling.h" @@ -44,10 +44,10 @@ - (id)initWithCoder:(NSCoder *)aDecoder { - (void)viewDidLoad { [super viewDidLoad]; - + [self reloadLayout]; [self.collectionView registerNib:self.headerNib - forSupplementaryViewOfKind:CSStickyHeaderParallaxHeader + forSupplementaryViewOfKind:[CSStickyHeaderFlowLayout elementKindStickyHeaderParallaxHeader] withReuseIdentifier:@"header"]; #ifdef DEBUG_PULL_TO_REFRESH @@ -119,7 +119,7 @@ - (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView cell.textLabel.text = [[obj allKeys] firstObject]; return cell; - } else if ([kind isEqualToString:CSStickyHeaderParallaxHeader]) { + } else if ([kind isEqualToString:[CSStickyHeaderFlowLayout elementKindStickyHeaderParallaxHeader]]) { UICollectionReusableView *cell = [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:@"header" forIndexPath:indexPath]; diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSSearchBarHeader.xib b/Project/CSStickyHeaderFlowLayoutDemo/CSSearchBarHeader.xib index ae2a3d6..47bcc12 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSSearchBarHeader.xib +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSSearchBarHeader.xib @@ -1,8 +1,7 @@ - + - - + @@ -32,9 +31,4 @@ - - - - - diff --git a/Project/CSStickyHeaderFlowLayoutDemo/CSStickyParallaxHeaderViewController.m b/Project/CSStickyHeaderFlowLayoutDemo/CSStickyParallaxHeaderViewController.m index ca75d50..d52488d 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/CSStickyParallaxHeaderViewController.m +++ b/Project/CSStickyHeaderFlowLayoutDemo/CSStickyParallaxHeaderViewController.m @@ -9,7 +9,7 @@ #import "CSStickyParallaxHeaderViewController.h" #import "CSCell.h" #import "CSSectionHeader.h" -#import "CSStickyHeaderFlowLayout.h" +@import CSStickyHeaderFlowLayout; @interface CSStickyParallaxHeaderViewController () @@ -62,9 +62,8 @@ - (void)viewDidLoad // Also insets the scroll indicator so it appears below the search bar self.collectionView.scrollIndicatorInsets = UIEdgeInsetsMake(0, 0, 0, 0); - [self.collectionView registerNib:self.headerNib - forSupplementaryViewOfKind:CSStickyHeaderParallaxHeader + forSupplementaryViewOfKind:[CSStickyHeaderFlowLayout elementKindStickyHeaderParallaxHeader] withReuseIdentifier:@"header"]; } @@ -76,7 +75,7 @@ - (void)willAnimateRotationToInterfaceOrientation:(UIInterfaceOrientation)toInte - (void)reloadLayout { CSStickyHeaderFlowLayout *layout = (id)self.collectionViewLayout; - + if ([layout isKindOfClass:[CSStickyHeaderFlowLayout class]]) { layout.parallaxHeaderReferenceSize = CGSizeMake(self.view.frame.size.width, 426); layout.parallaxHeaderMinimumReferenceSize = CGSizeMake(self.view.frame.size.width, 110); @@ -120,7 +119,7 @@ - (UICollectionReusableView *)collectionView:(UICollectionView *)collectionView return cell; - } else if ([kind isEqualToString:CSStickyHeaderParallaxHeader]) { + } else if ([kind isEqualToString:[CSStickyHeaderFlowLayout elementKindStickyHeaderParallaxHeader]]) { UICollectionReusableView *cell = [collectionView dequeueReusableSupplementaryViewOfKind:kind withReuseIdentifier:@"header" forIndexPath:indexPath]; diff --git a/Project/CSStickyHeaderFlowLayoutDemo/Images.xcassets/AppIcon.appiconset/Contents.json b/Project/CSStickyHeaderFlowLayoutDemo/Images.xcassets/AppIcon.appiconset/Contents.json index 33ec0bc..118c98f 100644 --- a/Project/CSStickyHeaderFlowLayoutDemo/Images.xcassets/AppIcon.appiconset/Contents.json +++ b/Project/CSStickyHeaderFlowLayoutDemo/Images.xcassets/AppIcon.appiconset/Contents.json @@ -5,11 +5,21 @@ "size" : "29x29", "scale" : "2x" }, + { + "idiom" : "iphone", + "size" : "29x29", + "scale" : "3x" + }, { "idiom" : "iphone", "size" : "40x40", "scale" : "2x" }, + { + "idiom" : "iphone", + "size" : "40x40", + "scale" : "3x" + }, { "idiom" : "iphone", "size" : "60x60", diff --git a/Project/CSStickyHeaderFlowLayoutDemoTests/CSStickyHeaderFlowLayoutDemoTests-Info.plist b/Project/CSStickyHeaderFlowLayoutDemoTests/CSStickyHeaderFlowLayoutDemoTests-Info.plist deleted file mode 100644 index 169b6f7..0000000 --- a/Project/CSStickyHeaderFlowLayoutDemoTests/CSStickyHeaderFlowLayoutDemoTests-Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - ${EXECUTABLE_NAME} - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/Project/CSStickyHeaderFlowLayoutDemoTests/CSStickyHeaderFlowLayoutDemoTests.m b/Project/CSStickyHeaderFlowLayoutDemoTests/CSStickyHeaderFlowLayoutDemoTests.m deleted file mode 100644 index 4fc774f..0000000 --- a/Project/CSStickyHeaderFlowLayoutDemoTests/CSStickyHeaderFlowLayoutDemoTests.m +++ /dev/null @@ -1,34 +0,0 @@ -// -// CSStickyHeaderFlowLayoutDemoTests.m -// CSStickyHeaderFlowLayoutDemoTests -// -// Created by Jamz Tang on 8/1/14. -// Copyright (c) 2014 Jamz Tang. All rights reserved. -// - -#import - -@interface CSStickyHeaderFlowLayoutDemoTests : XCTestCase - -@end - -@implementation CSStickyHeaderFlowLayoutDemoTests - -- (void)setUp -{ - [super setUp]; - // Put setup code here. This method is called before the invocation of each test method in the class. -} - -- (void)tearDown -{ - // Put teardown code here. This method is called after the invocation of each test method in the class. - [super tearDown]; -} - -- (void)testExample -{ - XCTFail(@"No implementation for \"%s\"", __PRETTY_FUNCTION__); -} - -@end diff --git a/Project/CSStickyHeaderFlowLayoutDemoTests/en.lproj/InfoPlist.strings b/Project/CSStickyHeaderFlowLayoutDemoTests/en.lproj/InfoPlist.strings deleted file mode 100644 index 477b28f..0000000 --- a/Project/CSStickyHeaderFlowLayoutDemoTests/en.lproj/InfoPlist.strings +++ /dev/null @@ -1,2 +0,0 @@ -/* Localized versions of Info.plist keys */ - diff --git a/Project/Podfile b/Project/Podfile index aca0175..83b44e6 100644 --- a/Project/Podfile +++ b/Project/Podfile @@ -1,2 +1,7 @@ -platform :ios, '7.0' -pod "CSStickyHeaderFlowLayout", :path => "../" +# Uncomment this line to define a global platform for your project +# platform :ios, '9.0' + +target 'CSStickyHeaderFlowLayoutDemo' do + use_frameworks! + pod 'CSStickyHeaderFlowLayout', :path => '../' +end diff --git a/Project/Podfile.lock b/Project/Podfile.lock index e838b82..d5f9616 100644 --- a/Project/Podfile.lock +++ b/Project/Podfile.lock @@ -1,5 +1,5 @@ PODS: - - CSStickyHeaderFlowLayout (0.2.10) + - CSStickyHeaderFlowLayout (0.2.11) DEPENDENCIES: - CSStickyHeaderFlowLayout (from `../`) @@ -9,6 +9,8 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - CSStickyHeaderFlowLayout: 5366582779d8b7c9ba9b9cc729c218cc23888776 + CSStickyHeaderFlowLayout: 835d734b40e45460a4a72d3f2ca06dcdcd4f0dad -COCOAPODS: 0.38.2 +PODFILE CHECKSUM: a352297494e8941361f57449bc7baadf12de1844 + +COCOAPODS: 1.0.1 diff --git a/Project/Pods/Headers/Private/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h b/Project/Pods/Headers/Private/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h deleted file mode 120000 index bf691a1..0000000 --- a/Project/Pods/Headers/Private/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h +++ /dev/null @@ -1 +0,0 @@ -../../../../../Classes/CSStickyHeaderFlowLayout.h \ No newline at end of file diff --git a/Project/Pods/Headers/Private/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutAttributes.h b/Project/Pods/Headers/Private/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutAttributes.h deleted file mode 120000 index d8b323e..0000000 --- a/Project/Pods/Headers/Private/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutAttributes.h +++ /dev/null @@ -1 +0,0 @@ -../../../../../Classes/CSStickyHeaderFlowLayoutAttributes.h \ No newline at end of file diff --git a/Project/Pods/Headers/Public/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h b/Project/Pods/Headers/Public/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h deleted file mode 120000 index bf691a1..0000000 --- a/Project/Pods/Headers/Public/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.h +++ /dev/null @@ -1 +0,0 @@ -../../../../../Classes/CSStickyHeaderFlowLayout.h \ No newline at end of file diff --git a/Project/Pods/Headers/Public/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutAttributes.h b/Project/Pods/Headers/Public/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutAttributes.h deleted file mode 120000 index d8b323e..0000000 --- a/Project/Pods/Headers/Public/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayoutAttributes.h +++ /dev/null @@ -1 +0,0 @@ -../../../../../Classes/CSStickyHeaderFlowLayoutAttributes.h \ No newline at end of file diff --git a/Project/Pods/Local Podspecs/CSStickyHeaderFlowLayout.podspec.json b/Project/Pods/Local Podspecs/CSStickyHeaderFlowLayout.podspec.json index 3f9d251..0a96f64 100644 --- a/Project/Pods/Local Podspecs/CSStickyHeaderFlowLayout.podspec.json +++ b/Project/Pods/Local Podspecs/CSStickyHeaderFlowLayout.podspec.json @@ -1,6 +1,6 @@ { "name": "CSStickyHeaderFlowLayout", - "version": "0.2.10", + "version": "0.2.11", "summary": "Parallax and Sticky header done right using UICollectionViewLayout", "description": "UICollectionView are flexible and you can use supplementary views to\nanything you wanted.", "homepage": "http://github.com/jamztang/CSStickyHeaderFlowLayout", @@ -11,13 +11,13 @@ }, "source": { "git": "https://github.com/jamztang/CSStickyHeaderFlowLayout.git", - "tag": "0.2.10" + "tag": "0.2.11" }, "platforms": { - "ios": "7.0" + "ios": "9.0" }, "requires_arc": true, - "source_files": "Classes", + "source_files": "Classes/**/*.{swift}", "ios": { "exclude_files": "Classes/osx" }, diff --git a/Project/Pods/Manifest.lock b/Project/Pods/Manifest.lock index e838b82..d5f9616 100644 --- a/Project/Pods/Manifest.lock +++ b/Project/Pods/Manifest.lock @@ -1,5 +1,5 @@ PODS: - - CSStickyHeaderFlowLayout (0.2.10) + - CSStickyHeaderFlowLayout (0.2.11) DEPENDENCIES: - CSStickyHeaderFlowLayout (from `../`) @@ -9,6 +9,8 @@ EXTERNAL SOURCES: :path: "../" SPEC CHECKSUMS: - CSStickyHeaderFlowLayout: 5366582779d8b7c9ba9b9cc729c218cc23888776 + CSStickyHeaderFlowLayout: 835d734b40e45460a4a72d3f2ca06dcdcd4f0dad -COCOAPODS: 0.38.2 +PODFILE CHECKSUM: a352297494e8941361f57449bc7baadf12de1844 + +COCOAPODS: 1.0.1 diff --git a/Project/Pods/Pods.xcodeproj/project.pbxproj b/Project/Pods/Pods.xcodeproj/project.pbxproj index e44e841..19558bd 100644 --- a/Project/Pods/Pods.xcodeproj/project.pbxproj +++ b/Project/Pods/Pods.xcodeproj/project.pbxproj @@ -7,205 +7,221 @@ objects = { /* Begin PBXBuildFile section */ - 4939C1D302428B8AA4D845AA6649315E /* Pods-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = D977BFC33FB2277A3AEDEC48FFCA2079 /* Pods-dummy.m */; }; - 718CC17A4811A1C529658991CE1529D8 /* CSStickyHeaderFlowLayoutAttributes.m in Sources */ = {isa = PBXBuildFile; fileRef = C9DF42FC14C22B3814DB7EFD04400F8E /* CSStickyHeaderFlowLayoutAttributes.m */; }; - 90B7D3BC05B6326BE1ACC8369BC4BA9E /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5001DE7E6DBAEB117E72A32A567B30E0 /* Foundation.framework */; }; - BF1B5F9C0B8C15493A888378DB06E099 /* CSStickyHeaderFlowLayout.m in Sources */ = {isa = PBXBuildFile; fileRef = 59912E49FAEB9F1FC77C22957EE88582 /* CSStickyHeaderFlowLayout.m */; }; - C6840549AF89761FFC581FBB8197A427 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 5001DE7E6DBAEB117E72A32A567B30E0 /* Foundation.framework */; }; - CD23ACA14536749C7672FE1FCE60A7D6 /* CSStickyHeaderFlowLayoutAttributes.h in Headers */ = {isa = PBXBuildFile; fileRef = C101ADFA653BE696B6288259608E1BC6 /* CSStickyHeaderFlowLayoutAttributes.h */; }; - D76182056CC6BB8DED186CF4EBD28CDA /* CSStickyHeaderFlowLayout-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 7FF0A77C3567C8B48155BFDE19ABC20C /* CSStickyHeaderFlowLayout-dummy.m */; }; - E9BB7C82CE2329FA219E4422CE95B464 /* CSStickyHeaderFlowLayout.h in Headers */ = {isa = PBXBuildFile; fileRef = 1257CE923430D3E27D1157DCBCF77FD3 /* CSStickyHeaderFlowLayout.h */; }; + 144CC6735F59E48C84E24173A1A9D3AF /* CSStickyHeaderFlowLayout-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = 047087A5430E7B67AAF2144543EF7E03 /* CSStickyHeaderFlowLayout-dummy.m */; }; + 1AF3A35C2A4855F6158F56DDD59C39C4 /* CSStickyHeaderFlowLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = C713EF3C0315A26E95D46E322CE35347 /* CSStickyHeaderFlowLayout.swift */; }; + 1B7C616CCC1C5B020D5A48EDC03D9BB3 /* CSStickyHeaderFlowLayoutAttributes.swift in Sources */ = {isa = PBXBuildFile; fileRef = DADB778505AD155A90B3FC8ACAF9BDA5 /* CSStickyHeaderFlowLayoutAttributes.swift */; }; + 3471F34B250913CA877DC50E049C4EA1 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CEC22C73C1608DFA5D5D78BDCB218219 /* Foundation.framework */; }; + 3C9C0BF933532F020CB6F5B10A7BA863 /* CSStickyHeaderFlowLayout-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = CFAA15BA144CF1F29E11E40D1140282D /* CSStickyHeaderFlowLayout-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + A196EABFD21326B51107B3D38823C19C /* Pods-CSStickyHeaderFlowLayoutDemo-dummy.m in Sources */ = {isa = PBXBuildFile; fileRef = F7DC8DC786B6B8F43245BFED9BDAD95B /* Pods-CSStickyHeaderFlowLayoutDemo-dummy.m */; }; + EFF65CB4B41835ED82CE848E556E0317 /* Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h in Headers */ = {isa = PBXBuildFile; fileRef = C2E86EC8727F464782C2CF65ED684F40 /* Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h */; settings = {ATTRIBUTES = (Public, ); }; }; + F19E0CE6282BD6276D63A9A2DECA1071 /* Foundation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = CEC22C73C1608DFA5D5D78BDCB218219 /* Foundation.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ - 169C3A6CF1ED7AC1ADCA5B3DE678753D /* PBXContainerItemProxy */ = { + 3F4235CDD1C89E752147E383BCAADA4F /* PBXContainerItemProxy */ = { isa = PBXContainerItemProxy; containerPortal = D41D8CD98F00B204E9800998ECF8427E /* Project object */; proxyType = 1; - remoteGlobalIDString = 32CF90DBE2A4842932209237BC634C11; + remoteGlobalIDString = 95E95694BB646B360A7AB6093CD9789A; remoteInfo = CSStickyHeaderFlowLayout; }; /* End PBXContainerItemProxy section */ /* Begin PBXFileReference section */ - 07836F93A318AB1B5D363BBB30E562AD /* CSStickyHeaderFlowLayout-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "CSStickyHeaderFlowLayout-prefix.pch"; sourceTree = ""; }; - 1257CE923430D3E27D1157DCBCF77FD3 /* CSStickyHeaderFlowLayout.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CSStickyHeaderFlowLayout.h; sourceTree = ""; }; - 15A529C27057E4A57D259CBC6E6CE49C /* Pods-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-acknowledgements.markdown"; sourceTree = ""; }; - 2A105B12EA2A2F16B544420D6D486581 /* libCSStickyHeaderFlowLayout.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libCSStickyHeaderFlowLayout.a; sourceTree = BUILT_PRODUCTS_DIR; }; - 5001DE7E6DBAEB117E72A32A567B30E0 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS8.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; - 59912E49FAEB9F1FC77C22957EE88582 /* CSStickyHeaderFlowLayout.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CSStickyHeaderFlowLayout.m; sourceTree = ""; }; - 62BC0F6B182FE98FFA3CA86787062EF1 /* Pods.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Pods.debug.xcconfig; sourceTree = ""; }; - 641AE05DD55E5E6AC1590CD7B4A18F97 /* Pods-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-resources.sh"; sourceTree = ""; }; - 7FF0A77C3567C8B48155BFDE19ABC20C /* CSStickyHeaderFlowLayout-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "CSStickyHeaderFlowLayout-dummy.m"; sourceTree = ""; }; - 96E0C6AF1C624380CE9421A24E761FD4 /* CSStickyHeaderFlowLayout.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = CSStickyHeaderFlowLayout.xcconfig; sourceTree = ""; }; - BA6428E9F66FD5A23C0A2E06ED26CD2F /* Podfile */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; - BF59BC15D23E1E1912C8F334E7236813 /* Pods-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-acknowledgements.plist"; sourceTree = ""; }; - C101ADFA653BE696B6288259608E1BC6 /* CSStickyHeaderFlowLayoutAttributes.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = CSStickyHeaderFlowLayoutAttributes.h; sourceTree = ""; }; - C9DF42FC14C22B3814DB7EFD04400F8E /* CSStickyHeaderFlowLayoutAttributes.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = CSStickyHeaderFlowLayoutAttributes.m; sourceTree = ""; }; - CC7D496BDE63E8D94E22B7817AD9A268 /* CSStickyHeaderFlowLayout-Private.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "CSStickyHeaderFlowLayout-Private.xcconfig"; sourceTree = ""; }; - D977BFC33FB2277A3AEDEC48FFCA2079 /* Pods-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-dummy.m"; sourceTree = ""; }; - E256BC23DED73FB12167274A29383CB2 /* libPods.a */ = {isa = PBXFileReference; explicitFileType = archive.ar; includeInIndex = 0; path = libPods.a; sourceTree = BUILT_PRODUCTS_DIR; }; - E8E49AD5F42BB54B641C041AF44A5760 /* Pods.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = Pods.release.xcconfig; sourceTree = ""; }; + 02FC7498C2A1983A9AADBBB43666560F /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; + 047087A5430E7B67AAF2144543EF7E03 /* CSStickyHeaderFlowLayout-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "CSStickyHeaderFlowLayout-dummy.m"; sourceTree = ""; }; + 2A4305CA927824DCB28661BCDF0CC04A /* Pods-CSStickyHeaderFlowLayoutDemo-resources.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-CSStickyHeaderFlowLayoutDemo-resources.sh"; sourceTree = ""; }; + 2D222472F4D50374D90AA9EF7FAD82C6 /* Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.markdown */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text; path = "Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.markdown"; sourceTree = ""; }; + 384CCBF47AE047ECE00D8CBD3080E165 /* Pods_CSStickyHeaderFlowLayoutDemo.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_CSStickyHeaderFlowLayoutDemo.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 446CDB6A2DBB76105545760728168C1E /* CSStickyHeaderFlowLayout.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = CSStickyHeaderFlowLayout.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + 5BFB8E098006D15C7D995C6686259BEB /* CSStickyHeaderFlowLayout.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = CSStickyHeaderFlowLayout.modulemap; sourceTree = ""; }; + 5F29F27AC16D22737F243DE503F8150C /* CSStickyHeaderFlowLayout-prefix.pch */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "CSStickyHeaderFlowLayout-prefix.pch"; sourceTree = ""; }; + 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */ = {isa = PBXFileReference; explicitFileType = text.script.ruby; includeInIndex = 1; name = Podfile; path = ../Podfile; sourceTree = SOURCE_ROOT; xcLanguageSpecificationIdentifier = xcode.lang.ruby; }; + 9EB0F3B70596476C901D335C6C2C0A5E /* CSStickyHeaderFlowLayout.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = CSStickyHeaderFlowLayout.xcconfig; sourceTree = ""; }; + C2E86EC8727F464782C2CF65ED684F40 /* Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h"; sourceTree = ""; }; + C5FCCC205CF338F410D4F27FDE9005EA /* Pods-CSStickyHeaderFlowLayoutDemo-frameworks.sh */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.script.sh; path = "Pods-CSStickyHeaderFlowLayoutDemo-frameworks.sh"; sourceTree = ""; }; + C713EF3C0315A26E95D46E322CE35347 /* CSStickyHeaderFlowLayout.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CSStickyHeaderFlowLayout.swift; sourceTree = ""; }; + CEC22C73C1608DFA5D5D78BDCB218219 /* Foundation.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = Foundation.framework; path = Platforms/iPhoneOS.platform/Developer/SDKs/iPhoneOS9.3.sdk/System/Library/Frameworks/Foundation.framework; sourceTree = DEVELOPER_DIR; }; + CFAA15BA144CF1F29E11E40D1140282D /* CSStickyHeaderFlowLayout-umbrella.h */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.h; path = "CSStickyHeaderFlowLayout-umbrella.h"; sourceTree = ""; }; + D091EC71A1E90EC563CC8041B2F1F3EB /* Pods-CSStickyHeaderFlowLayoutDemo.modulemap */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = "sourcecode.module-map"; path = "Pods-CSStickyHeaderFlowLayoutDemo.modulemap"; sourceTree = ""; }; + D9FC317AD965AE723290E3CD7319FB7A /* Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig"; sourceTree = ""; }; + DADB778505AD155A90B3FC8ACAF9BDA5 /* CSStickyHeaderFlowLayoutAttributes.swift */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.swift; path = CSStickyHeaderFlowLayoutAttributes.swift; sourceTree = ""; }; + F20CE55E6F6DB06B57AB5ED1D2E055B0 /* Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = "Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.plist"; sourceTree = ""; }; + F7DC8DC786B6B8F43245BFED9BDAD95B /* Pods-CSStickyHeaderFlowLayoutDemo-dummy.m */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = sourcecode.c.objc; path = "Pods-CSStickyHeaderFlowLayoutDemo-dummy.m"; sourceTree = ""; }; + FCCB5E38F1A6C33C2ADA1B73B653FD63 /* Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; path = "Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig"; sourceTree = ""; }; + FDAC068BA9EA5DFF688240547A14D317 /* Info.plist */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ - 0C3AD088E4FF32DE0DCCC24F189646F4 /* Frameworks */ = { + 528857BC1240C88E60DFEA0ADECEB9C1 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - C6840549AF89761FFC581FBB8197A427 /* Foundation.framework in Frameworks */, + F19E0CE6282BD6276D63A9A2DECA1071 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; - 794A06816DE179D23431D33B8172D958 /* Frameworks */ = { + 69FA3914268604A8DF1EF46DEB7B0A06 /* Frameworks */ = { isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 90B7D3BC05B6326BE1ACC8369BC4BA9E /* Foundation.framework in Frameworks */, + 3471F34B250913CA877DC50E049C4EA1 /* Foundation.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXFrameworksBuildPhase section */ /* Begin PBXGroup section */ - 410698420A66B648363A45E76517BBEE /* Development Pods */ = { + 34E7F317EDA4876A4251DCCBEF83B257 /* Support Files */ = { isa = PBXGroup; children = ( - F80AFA9A1107ED5A27D10E2E7DAAEFBE /* CSStickyHeaderFlowLayout */, + 5BFB8E098006D15C7D995C6686259BEB /* CSStickyHeaderFlowLayout.modulemap */, + 9EB0F3B70596476C901D335C6C2C0A5E /* CSStickyHeaderFlowLayout.xcconfig */, + 047087A5430E7B67AAF2144543EF7E03 /* CSStickyHeaderFlowLayout-dummy.m */, + 5F29F27AC16D22737F243DE503F8150C /* CSStickyHeaderFlowLayout-prefix.pch */, + CFAA15BA144CF1F29E11E40D1140282D /* CSStickyHeaderFlowLayout-umbrella.h */, + FDAC068BA9EA5DFF688240547A14D317 /* Info.plist */, ); - name = "Development Pods"; + name = "Support Files"; + path = "Project/Pods/Target Support Files/CSStickyHeaderFlowLayout"; sourceTree = ""; }; - 53F661C0CA7190D2CF05023FB33D61E4 /* iOS */ = { + 3DCAB2B7CDE207B3958B6CB957FCC758 /* iOS */ = { isa = PBXGroup; children = ( - 5001DE7E6DBAEB117E72A32A567B30E0 /* Foundation.framework */, + CEC22C73C1608DFA5D5D78BDCB218219 /* Foundation.framework */, ); name = iOS; sourceTree = ""; }; - 7DB346D0F39D3F0E887471402A8071AB = { + 410698420A66B648363A45E76517BBEE /* Development Pods */ = { isa = PBXGroup; children = ( - BA6428E9F66FD5A23C0A2E06ED26CD2F /* Podfile */, - 410698420A66B648363A45E76517BBEE /* Development Pods */, - BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */, - CCA510CFBEA2D207524CDA0D73C3B561 /* Products */, - D2411A5FE7F7A004607BED49990C37F4 /* Targets Support Files */, + 5A5C5D02EB99B3945CCDA85CE649B025 /* CSStickyHeaderFlowLayout */, ); + name = "Development Pods"; sourceTree = ""; }; - 952EEBFAF8F7E620423C9F156F25A506 /* Pods */ = { + 53313A1CBBC1FF4CF63B830D241DABFE /* Pods-CSStickyHeaderFlowLayoutDemo */ = { isa = PBXGroup; children = ( - 15A529C27057E4A57D259CBC6E6CE49C /* Pods-acknowledgements.markdown */, - BF59BC15D23E1E1912C8F334E7236813 /* Pods-acknowledgements.plist */, - D977BFC33FB2277A3AEDEC48FFCA2079 /* Pods-dummy.m */, - 641AE05DD55E5E6AC1590CD7B4A18F97 /* Pods-resources.sh */, - 62BC0F6B182FE98FFA3CA86787062EF1 /* Pods.debug.xcconfig */, - E8E49AD5F42BB54B641C041AF44A5760 /* Pods.release.xcconfig */, + 02FC7498C2A1983A9AADBBB43666560F /* Info.plist */, + D091EC71A1E90EC563CC8041B2F1F3EB /* Pods-CSStickyHeaderFlowLayoutDemo.modulemap */, + 2D222472F4D50374D90AA9EF7FAD82C6 /* Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.markdown */, + F20CE55E6F6DB06B57AB5ED1D2E055B0 /* Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.plist */, + F7DC8DC786B6B8F43245BFED9BDAD95B /* Pods-CSStickyHeaderFlowLayoutDemo-dummy.m */, + C5FCCC205CF338F410D4F27FDE9005EA /* Pods-CSStickyHeaderFlowLayoutDemo-frameworks.sh */, + 2A4305CA927824DCB28661BCDF0CC04A /* Pods-CSStickyHeaderFlowLayoutDemo-resources.sh */, + C2E86EC8727F464782C2CF65ED684F40 /* Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h */, + FCCB5E38F1A6C33C2ADA1B73B653FD63 /* Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig */, + D9FC317AD965AE723290E3CD7319FB7A /* Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig */, ); - name = Pods; - path = "Target Support Files/Pods"; + name = "Pods-CSStickyHeaderFlowLayoutDemo"; + path = "Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo"; sourceTree = ""; }; - BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */ = { + 5534B223C9A338F124C6EEE3A8F8352A /* Targets Support Files */ = { isa = PBXGroup; children = ( - 53F661C0CA7190D2CF05023FB33D61E4 /* iOS */, + 53313A1CBBC1FF4CF63B830D241DABFE /* Pods-CSStickyHeaderFlowLayoutDemo */, ); - name = Frameworks; + name = "Targets Support Files"; sourceTree = ""; }; - CCA510CFBEA2D207524CDA0D73C3B561 /* Products */ = { + 5A5C5D02EB99B3945CCDA85CE649B025 /* CSStickyHeaderFlowLayout */ = { isa = PBXGroup; children = ( - 2A105B12EA2A2F16B544420D6D486581 /* libCSStickyHeaderFlowLayout.a */, - E256BC23DED73FB12167274A29383CB2 /* libPods.a */, + 9A428D2B6E08DAB089311B604D1C1807 /* Classes */, + 34E7F317EDA4876A4251DCCBEF83B257 /* Support Files */, ); - name = Products; + name = CSStickyHeaderFlowLayout; + path = ../..; sourceTree = ""; }; - D2411A5FE7F7A004607BED49990C37F4 /* Targets Support Files */ = { + 7DB346D0F39D3F0E887471402A8071AB = { isa = PBXGroup; children = ( - 952EEBFAF8F7E620423C9F156F25A506 /* Pods */, + 93A4A3777CF96A4AAC1D13BA6DCCEA73 /* Podfile */, + 410698420A66B648363A45E76517BBEE /* Development Pods */, + BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */, + CFB85D9B722833EC653C84DD5355793F /* Products */, + 5534B223C9A338F124C6EEE3A8F8352A /* Targets Support Files */, ); - name = "Targets Support Files"; sourceTree = ""; }; - DA0CD6575CEDE7061087F70461B13B42 /* Classes */ = { + 9A428D2B6E08DAB089311B604D1C1807 /* Classes */ = { isa = PBXGroup; children = ( - 1257CE923430D3E27D1157DCBCF77FD3 /* CSStickyHeaderFlowLayout.h */, - 59912E49FAEB9F1FC77C22957EE88582 /* CSStickyHeaderFlowLayout.m */, - C101ADFA653BE696B6288259608E1BC6 /* CSStickyHeaderFlowLayoutAttributes.h */, - C9DF42FC14C22B3814DB7EFD04400F8E /* CSStickyHeaderFlowLayoutAttributes.m */, + C713EF3C0315A26E95D46E322CE35347 /* CSStickyHeaderFlowLayout.swift */, + DADB778505AD155A90B3FC8ACAF9BDA5 /* CSStickyHeaderFlowLayoutAttributes.swift */, ); path = Classes; sourceTree = ""; }; - F80AFA9A1107ED5A27D10E2E7DAAEFBE /* CSStickyHeaderFlowLayout */ = { + BC3CA7F9E30CC8F7E2DD044DD34432FC /* Frameworks */ = { isa = PBXGroup; children = ( - DA0CD6575CEDE7061087F70461B13B42 /* Classes */, - FC99B6419D37394393040CCFB4F45C5D /* Support Files */, + 3DCAB2B7CDE207B3958B6CB957FCC758 /* iOS */, ); - name = CSStickyHeaderFlowLayout; - path = ../..; + name = Frameworks; sourceTree = ""; }; - FC99B6419D37394393040CCFB4F45C5D /* Support Files */ = { + CFB85D9B722833EC653C84DD5355793F /* Products */ = { isa = PBXGroup; children = ( - 96E0C6AF1C624380CE9421A24E761FD4 /* CSStickyHeaderFlowLayout.xcconfig */, - CC7D496BDE63E8D94E22B7817AD9A268 /* CSStickyHeaderFlowLayout-Private.xcconfig */, - 7FF0A77C3567C8B48155BFDE19ABC20C /* CSStickyHeaderFlowLayout-dummy.m */, - 07836F93A318AB1B5D363BBB30E562AD /* CSStickyHeaderFlowLayout-prefix.pch */, + 446CDB6A2DBB76105545760728168C1E /* CSStickyHeaderFlowLayout.framework */, + 384CCBF47AE047ECE00D8CBD3080E165 /* Pods_CSStickyHeaderFlowLayoutDemo.framework */, ); - name = "Support Files"; - path = "Project/Pods/Target Support Files/CSStickyHeaderFlowLayout"; + name = Products; sourceTree = ""; }; /* End PBXGroup section */ /* Begin PBXHeadersBuildPhase section */ - DE5B0200C7F877527EC419BFBF2BCAC2 /* Headers */ = { + 7533209F720371322C1F5C6F98F70EB6 /* Headers */ = { isa = PBXHeadersBuildPhase; buildActionMask = 2147483647; files = ( - E9BB7C82CE2329FA219E4422CE95B464 /* CSStickyHeaderFlowLayout.h in Headers */, - CD23ACA14536749C7672FE1FCE60A7D6 /* CSStickyHeaderFlowLayoutAttributes.h in Headers */, + EFF65CB4B41835ED82CE848E556E0317 /* Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h in Headers */, + ); + runOnlyForDeploymentPostprocessing = 0; + }; + FB1F6FD9C397CD31D9D1C2A74BD20439 /* Headers */ = { + isa = PBXHeadersBuildPhase; + buildActionMask = 2147483647; + files = ( + 3C9C0BF933532F020CB6F5B10A7BA863 /* CSStickyHeaderFlowLayout-umbrella.h in Headers */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXHeadersBuildPhase section */ /* Begin PBXNativeTarget section */ - 2EAA1A1D205BF057B42AB5DE35ECFE03 /* Pods */ = { + 09A2D51F8D917F13C73DB41D2C3EC40D /* Pods-CSStickyHeaderFlowLayoutDemo */ = { isa = PBXNativeTarget; - buildConfigurationList = 54FCB8F6DEC70AD3A3D4051D92E2525D /* Build configuration list for PBXNativeTarget "Pods" */; + buildConfigurationList = 1EFF72CC07EE52DDCF3E4CF2770E1D08 /* Build configuration list for PBXNativeTarget "Pods-CSStickyHeaderFlowLayoutDemo" */; buildPhases = ( - B3CDA53154316A0AE01D4C7FC0D037D4 /* Sources */, - 794A06816DE179D23431D33B8172D958 /* Frameworks */, + AF432659D9125D9589A1C20F00765CC2 /* Sources */, + 69FA3914268604A8DF1EF46DEB7B0A06 /* Frameworks */, + 7533209F720371322C1F5C6F98F70EB6 /* Headers */, ); buildRules = ( ); dependencies = ( - 5A65E30016C21B89D229A375B73A21D3 /* PBXTargetDependency */, + 9BB0A303B250B67831C416392A08331E /* PBXTargetDependency */, ); - name = Pods; - productName = Pods; - productReference = E256BC23DED73FB12167274A29383CB2 /* libPods.a */; - productType = "com.apple.product-type.library.static"; + name = "Pods-CSStickyHeaderFlowLayoutDemo"; + productName = "Pods-CSStickyHeaderFlowLayoutDemo"; + productReference = 384CCBF47AE047ECE00D8CBD3080E165 /* Pods_CSStickyHeaderFlowLayoutDemo.framework */; + productType = "com.apple.product-type.framework"; }; - 32CF90DBE2A4842932209237BC634C11 /* CSStickyHeaderFlowLayout */ = { + 95E95694BB646B360A7AB6093CD9789A /* CSStickyHeaderFlowLayout */ = { isa = PBXNativeTarget; - buildConfigurationList = 19BD00C3D95D47758DC7D1BAB83BFB7F /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayout" */; + buildConfigurationList = 5FE9D1C623DA3796ACA7CA087D6B091A /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayout" */; buildPhases = ( - 3946CEA8E4418852132E21CD2CE79484 /* Sources */, - 0C3AD088E4FF32DE0DCCC24F189646F4 /* Frameworks */, - DE5B0200C7F877527EC419BFBF2BCAC2 /* Headers */, + 71A94AD374A026637C1E66F2EB728754 /* Sources */, + 528857BC1240C88E60DFEA0ADECEB9C1 /* Frameworks */, + FB1F6FD9C397CD31D9D1C2A74BD20439 /* Headers */, ); buildRules = ( ); @@ -213,8 +229,8 @@ ); name = CSStickyHeaderFlowLayout; productName = CSStickyHeaderFlowLayout; - productReference = 2A105B12EA2A2F16B544420D6D486581 /* libCSStickyHeaderFlowLayout.a */; - productType = "com.apple.product-type.library.static"; + productReference = 446CDB6A2DBB76105545760728168C1E /* CSStickyHeaderFlowLayout.framework */; + productType = "com.apple.product-type.framework"; }; /* End PBXNativeTarget section */ @@ -222,8 +238,16 @@ D41D8CD98F00B204E9800998ECF8427E /* Project object */ = { isa = PBXProject; attributes = { - LastSwiftUpdateCheck = 0700; + LastSwiftUpdateCheck = 0730; LastUpgradeCheck = 0700; + TargetAttributes = { + 09A2D51F8D917F13C73DB41D2C3EC40D = { + LastSwiftMigration = 0800; + }; + 95E95694BB646B360A7AB6093CD9789A = { + LastSwiftMigration = 0800; + }; + }; }; buildConfigurationList = 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */; compatibilityVersion = "Xcode 3.2"; @@ -233,51 +257,52 @@ en, ); mainGroup = 7DB346D0F39D3F0E887471402A8071AB; - productRefGroup = CCA510CFBEA2D207524CDA0D73C3B561 /* Products */; + productRefGroup = CFB85D9B722833EC653C84DD5355793F /* Products */; projectDirPath = ""; projectRoot = ""; targets = ( - 32CF90DBE2A4842932209237BC634C11 /* CSStickyHeaderFlowLayout */, - 2EAA1A1D205BF057B42AB5DE35ECFE03 /* Pods */, + 95E95694BB646B360A7AB6093CD9789A /* CSStickyHeaderFlowLayout */, + 09A2D51F8D917F13C73DB41D2C3EC40D /* Pods-CSStickyHeaderFlowLayoutDemo */, ); }; /* End PBXProject section */ /* Begin PBXSourcesBuildPhase section */ - 3946CEA8E4418852132E21CD2CE79484 /* Sources */ = { + 71A94AD374A026637C1E66F2EB728754 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - D76182056CC6BB8DED186CF4EBD28CDA /* CSStickyHeaderFlowLayout-dummy.m in Sources */, - BF1B5F9C0B8C15493A888378DB06E099 /* CSStickyHeaderFlowLayout.m in Sources */, - 718CC17A4811A1C529658991CE1529D8 /* CSStickyHeaderFlowLayoutAttributes.m in Sources */, + 144CC6735F59E48C84E24173A1A9D3AF /* CSStickyHeaderFlowLayout-dummy.m in Sources */, + 1AF3A35C2A4855F6158F56DDD59C39C4 /* CSStickyHeaderFlowLayout.swift in Sources */, + 1B7C616CCC1C5B020D5A48EDC03D9BB3 /* CSStickyHeaderFlowLayoutAttributes.swift in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; - B3CDA53154316A0AE01D4C7FC0D037D4 /* Sources */ = { + AF432659D9125D9589A1C20F00765CC2 /* Sources */ = { isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( - 4939C1D302428B8AA4D845AA6649315E /* Pods-dummy.m in Sources */, + A196EABFD21326B51107B3D38823C19C /* Pods-CSStickyHeaderFlowLayoutDemo-dummy.m in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; /* End PBXSourcesBuildPhase section */ /* Begin PBXTargetDependency section */ - 5A65E30016C21B89D229A375B73A21D3 /* PBXTargetDependency */ = { + 9BB0A303B250B67831C416392A08331E /* PBXTargetDependency */ = { isa = PBXTargetDependency; name = CSStickyHeaderFlowLayout; - target = 32CF90DBE2A4842932209237BC634C11 /* CSStickyHeaderFlowLayout */; - targetProxy = 169C3A6CF1ED7AC1ADCA5B3DE678753D /* PBXContainerItemProxy */; + target = 95E95694BB646B360A7AB6093CD9789A /* CSStickyHeaderFlowLayout */; + targetProxy = 3F4235CDD1C89E752147E383BCAADA4F /* PBXContainerItemProxy */; }; /* End PBXTargetDependency section */ /* Begin XCBuildConfiguration section */ - 052A17875CB827423D627183396CEB60 /* Release */ = { + 034014829C1E4434983CF3A690C12017 /* Debug */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -291,59 +316,165 @@ CLANG_WARN_OBJC_ROOT_CLASS = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = YES; - ENABLE_NS_ASSERTIONS = NO; + COPY_PHASE_STRIP = NO; + ENABLE_TESTABILITY = YES; GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_PREPROCESSOR_DEFINITIONS = "RELEASE=1"; + GCC_DYNAMIC_NO_PIC = NO; + GCC_OPTIMIZATION_LEVEL = 0; + GCC_PREPROCESSOR_DEFINITIONS = ( + "POD_CONFIGURATION_DEBUG=1", + "DEBUG=1", + "$(inherited)", + ); + GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 7.0; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + ONLY_ACTIVE_ARCH = YES; STRIP_INSTALLED_PRODUCT = NO; SYMROOT = "${SRCROOT}/../build"; - VALIDATE_PRODUCT = YES; }; - name = Release; + name = Debug; }; - 1D627B7053A47BA5ECE88F862A8DEEEA /* Release */ = { + 16005A731A4EF28CB8F0F5A7D91C8F2F /* Release */ = { isa = XCBuildConfiguration; - baseConfigurationReference = CC7D496BDE63E8D94E22B7817AD9A268 /* CSStickyHeaderFlowLayout-Private.xcconfig */; + baseConfigurationReference = D9FC317AD965AE723290E3CD7319FB7A /* Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig */; buildSettings = { + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_PREFIX_HEADER = "Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 7.0; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.modulemap"; MTL_ENABLE_DEBUG_INFO = NO; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = Pods_CSStickyHeaderFlowLayoutDemo; SDKROOT = iphoneos; SKIP_INSTALL = YES; + SWIFT_VERSION = 3.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; }; name = Release; }; - 3F7C21093C3458FFB9A157380A003F97 /* Debug */ = { + 265B82A89CC8F226F292C99F6332AADF /* Debug */ = { isa = XCBuildConfiguration; - baseConfigurationReference = CC7D496BDE63E8D94E22B7817AD9A268 /* CSStickyHeaderFlowLayout-Private.xcconfig */; + baseConfigurationReference = 9EB0F3B70596476C901D335C6C2C0A5E /* CSStickyHeaderFlowLayout.xcconfig */; buildSettings = { + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; GCC_PREFIX_HEADER = "Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-prefix.pch"; - IPHONEOS_DEPLOYMENT_TARGET = 7.0; + INFOPLIST_FILE = "Target Support Files/CSStickyHeaderFlowLayout/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.modulemap"; + MTL_ENABLE_DEBUG_INFO = YES; + PRODUCT_NAME = CSStickyHeaderFlowLayout; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 3.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Debug; + }; + 4497B9B54CA27A13666604E6F1C7697F /* Debug */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = FCCB5E38F1A6C33C2ADA1B73B653FD63 /* Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = dwarf; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + INFOPLIST_FILE = "Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MACH_O_TYPE = staticlib; + MODULEMAP_FILE = "Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.modulemap"; MTL_ENABLE_DEBUG_INFO = YES; OTHER_LDFLAGS = ""; OTHER_LIBTOOLFLAGS = ""; - PRODUCT_NAME = "$(TARGET_NAME)"; + PODS_ROOT = "$(SRCROOT)"; + PRODUCT_BUNDLE_IDENTIFIER = "org.cocoapods.${PRODUCT_NAME:rfc1034identifier}"; + PRODUCT_NAME = Pods_CSStickyHeaderFlowLayoutDemo; SDKROOT = iphoneos; SKIP_INSTALL = YES; + SWIFT_OPTIMIZATION_LEVEL = "-Onone"; + SWIFT_VERSION = 3.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; }; name = Debug; }; - B37F0F91F85060E28F1DAAB522DC7EC1 /* Debug */ = { + AB907FF4B11918227F44537625C0EA2D /* Release */ = { + isa = XCBuildConfiguration; + baseConfigurationReference = 9EB0F3B70596476C901D335C6C2C0A5E /* CSStickyHeaderFlowLayout.xcconfig */; + buildSettings = { + "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; + CURRENT_PROJECT_VERSION = 1; + DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; + DEFINES_MODULE = YES; + DYLIB_COMPATIBILITY_VERSION = 1; + DYLIB_CURRENT_VERSION = 1; + DYLIB_INSTALL_NAME_BASE = "@rpath"; + ENABLE_STRICT_OBJC_MSGSEND = YES; + GCC_NO_COMMON_BLOCKS = YES; + GCC_PREFIX_HEADER = "Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-prefix.pch"; + INFOPLIST_FILE = "Target Support Files/CSStickyHeaderFlowLayout/Info.plist"; + INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; + LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; + MODULEMAP_FILE = "Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.modulemap"; + MTL_ENABLE_DEBUG_INFO = NO; + PRODUCT_NAME = CSStickyHeaderFlowLayout; + SDKROOT = iphoneos; + SKIP_INSTALL = YES; + SWIFT_VERSION = 3.0; + TARGETED_DEVICE_FAMILY = "1,2"; + VERSIONING_SYSTEM = "apple-generic"; + VERSION_INFO_PREFIX = ""; + }; + name = Release; + }; + C7E474A03CAE21F1CB6046E7344C59BD /* Release */ = { isa = XCBuildConfiguration; buildSettings = { ALWAYS_SEARCH_USER_PATHS = NO; + CLANG_ANALYZER_NONNULL = YES; CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; CLANG_CXX_LIBRARY = "libc++"; CLANG_ENABLE_MODULES = YES; @@ -357,68 +488,34 @@ CLANG_WARN_OBJC_ROOT_CLASS = YES; CLANG_WARN_UNREACHABLE_CODE = YES; CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - COPY_PHASE_STRIP = NO; + COPY_PHASE_STRIP = YES; + ENABLE_NS_ASSERTIONS = NO; GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_OPTIMIZATION_LEVEL = 0; GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", + "POD_CONFIGURATION_RELEASE=1", "$(inherited)", ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; GCC_WARN_64_TO_32_BIT_CONVERSION = YES; GCC_WARN_ABOUT_RETURN_TYPE = YES; GCC_WARN_UNDECLARED_SELECTOR = YES; GCC_WARN_UNINITIALIZED_AUTOS = YES; GCC_WARN_UNUSED_FUNCTION = YES; GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 7.0; - ONLY_ACTIVE_ARCH = YES; + IPHONEOS_DEPLOYMENT_TARGET = 9.0; STRIP_INSTALLED_PRODUCT = NO; SYMROOT = "${SRCROOT}/../build"; - }; - name = Debug; - }; - BA689EE488AFB5C4C61B57BED665B985 /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = E8E49AD5F42BB54B641C041AF44A5760 /* Pods.release.xcconfig */; - buildSettings = { - ENABLE_STRICT_OBJC_MSGSEND = YES; - IPHONEOS_DEPLOYMENT_TARGET = 7.0; - MTL_ENABLE_DEBUG_INFO = NO; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; + VALIDATE_PRODUCT = YES; }; name = Release; }; - C73E823B626A71316C4172A3B03DF294 /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 62BC0F6B182FE98FFA3CA86787062EF1 /* Pods.debug.xcconfig */; - buildSettings = { - ENABLE_STRICT_OBJC_MSGSEND = YES; - IPHONEOS_DEPLOYMENT_TARGET = 7.0; - MTL_ENABLE_DEBUG_INFO = YES; - OTHER_LDFLAGS = ""; - OTHER_LIBTOOLFLAGS = ""; - PODS_ROOT = "$(SRCROOT)"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SDKROOT = iphoneos; - SKIP_INSTALL = YES; - }; - name = Debug; - }; /* End XCBuildConfiguration section */ /* Begin XCConfigurationList section */ - 19BD00C3D95D47758DC7D1BAB83BFB7F /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayout" */ = { + 1EFF72CC07EE52DDCF3E4CF2770E1D08 /* Build configuration list for PBXNativeTarget "Pods-CSStickyHeaderFlowLayoutDemo" */ = { isa = XCConfigurationList; buildConfigurations = ( - 3F7C21093C3458FFB9A157380A003F97 /* Debug */, - 1D627B7053A47BA5ECE88F862A8DEEEA /* Release */, + 4497B9B54CA27A13666604E6F1C7697F /* Debug */, + 16005A731A4EF28CB8F0F5A7D91C8F2F /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; @@ -426,17 +523,17 @@ 2D8E8EC45A3A1A1D94AE762CB5028504 /* Build configuration list for PBXProject "Pods" */ = { isa = XCConfigurationList; buildConfigurations = ( - B37F0F91F85060E28F1DAAB522DC7EC1 /* Debug */, - 052A17875CB827423D627183396CEB60 /* Release */, + 034014829C1E4434983CF3A690C12017 /* Debug */, + C7E474A03CAE21F1CB6046E7344C59BD /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; }; - 54FCB8F6DEC70AD3A3D4051D92E2525D /* Build configuration list for PBXNativeTarget "Pods" */ = { + 5FE9D1C623DA3796ACA7CA087D6B091A /* Build configuration list for PBXNativeTarget "CSStickyHeaderFlowLayout" */ = { isa = XCConfigurationList; buildConfigurations = ( - C73E823B626A71316C4172A3B03DF294 /* Debug */, - BA689EE488AFB5C4C61B57BED665B985 /* Release */, + 265B82A89CC8F226F292C99F6332AADF /* Debug */, + AB907FF4B11918227F44537625C0EA2D /* Release */, ); defaultConfigurationIsVisible = 0; defaultConfigurationName = Release; diff --git a/Project/Pods/Pods.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayout.xcscheme b/Project/Pods/Pods.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayout.xcscheme deleted file mode 100644 index 0c73e58..0000000 --- a/Project/Pods/Pods.xcodeproj/xcshareddata/xcschemes/CSStickyHeaderFlowLayout.xcscheme +++ /dev/null @@ -1,71 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-Private.xcconfig b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-Private.xcconfig deleted file mode 100644 index 7749a02..0000000 --- a/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-Private.xcconfig +++ /dev/null @@ -1,5 +0,0 @@ -#include "CSStickyHeaderFlowLayout.xcconfig" -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Private/CSStickyHeaderFlowLayout" "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/CSStickyHeaderFlowLayout" -PODS_ROOT = ${SRCROOT} -SKIP_INSTALL = YES \ No newline at end of file diff --git a/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-umbrella.h b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-umbrella.h new file mode 100644 index 0000000..28da858 --- /dev/null +++ b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout-umbrella.h @@ -0,0 +1,6 @@ +#import + + +FOUNDATION_EXPORT double CSStickyHeaderFlowLayoutVersionNumber; +FOUNDATION_EXPORT const unsigned char CSStickyHeaderFlowLayoutVersionString[]; + diff --git a/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.modulemap b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.modulemap new file mode 100644 index 0000000..2a198af --- /dev/null +++ b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.modulemap @@ -0,0 +1,6 @@ +framework module CSStickyHeaderFlowLayout { + umbrella header "CSStickyHeaderFlowLayout-umbrella.h" + + export * + module * { export * } +} diff --git a/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcconfig b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcconfig index e69de29..08933c7 100644 --- a/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcconfig +++ b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.xcconfig @@ -0,0 +1,9 @@ +CONFIGURATION_BUILD_DIR = $PODS_CONFIGURATION_BUILD_DIR/CSStickyHeaderFlowLayout +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +HEADER_SEARCH_PATHS = "${PODS_ROOT}/Headers/Private" "${PODS_ROOT}/Headers/Public" +OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT} +PRODUCT_BUNDLE_IDENTIFIER = org.cocoapods.${PRODUCT_NAME:rfc1034identifier} +SKIP_INSTALL = YES diff --git a/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/Info.plist b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/Info.plist new file mode 100644 index 0000000..d9f297e --- /dev/null +++ b/Project/Pods/Target Support Files/CSStickyHeaderFlowLayout/Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 0.2.11 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Info.plist b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Info.plist new file mode 100644 index 0000000..2243fe6 --- /dev/null +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Info.plist @@ -0,0 +1,26 @@ + + + + + CFBundleDevelopmentRegion + en + CFBundleExecutable + ${EXECUTABLE_NAME} + CFBundleIdentifier + ${PRODUCT_BUNDLE_IDENTIFIER} + CFBundleInfoDictionaryVersion + 6.0 + CFBundleName + ${PRODUCT_NAME} + CFBundlePackageType + FMWK + CFBundleShortVersionString + 1.0.0 + CFBundleSignature + ???? + CFBundleVersion + ${CURRENT_PROJECT_VERSION} + NSPrincipalClass + + + diff --git a/Project/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.markdown similarity index 96% rename from Project/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown rename to Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.markdown index af2fca3..3c8042d 100644 --- a/Project/Pods/Target Support Files/Pods/Pods-acknowledgements.markdown +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.markdown @@ -23,4 +23,4 @@ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. -Generated by CocoaPods - http://cocoapods.org +Generated by CocoaPods - https://cocoapods.org diff --git a/Project/Pods/Target Support Files/Pods/Pods-acknowledgements.plist b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.plist similarity index 96% rename from Project/Pods/Target Support Files/Pods/Pods-acknowledgements.plist rename to Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.plist index 05fd7b2..7b5d370 100644 --- a/Project/Pods/Target Support Files/Pods/Pods-acknowledgements.plist +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-acknowledgements.plist @@ -41,7 +41,7 @@ THE SOFTWARE. FooterText - Generated by CocoaPods - http://cocoapods.org + Generated by CocoaPods - https://cocoapods.org Title Type diff --git a/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-dummy.m b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-dummy.m new file mode 100644 index 0000000..7233c81 --- /dev/null +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-dummy.m @@ -0,0 +1,5 @@ +#import +@interface PodsDummy_Pods_CSStickyHeaderFlowLayoutDemo : NSObject +@end +@implementation PodsDummy_Pods_CSStickyHeaderFlowLayoutDemo +@end diff --git a/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-frameworks.sh b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-frameworks.sh new file mode 100755 index 0000000..598ebd2 --- /dev/null +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-frameworks.sh @@ -0,0 +1,91 @@ +#!/bin/sh +set -e + +echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" +mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + +SWIFT_STDLIB_PATH="${DT_TOOLCHAIN_DIR}/usr/lib/swift/${PLATFORM_NAME}" + +install_framework() +{ + if [ -r "${BUILT_PRODUCTS_DIR}/$1" ]; then + local source="${BUILT_PRODUCTS_DIR}/$1" + elif [ -r "${BUILT_PRODUCTS_DIR}/$(basename "$1")" ]; then + local source="${BUILT_PRODUCTS_DIR}/$(basename "$1")" + elif [ -r "$1" ]; then + local source="$1" + fi + + local destination="${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + + if [ -L "${source}" ]; then + echo "Symlinked..." + source="$(readlink "${source}")" + fi + + # use filter instead of exclude so missing patterns dont' throw errors + echo "rsync -av --filter \"- CVS/\" --filter \"- .svn/\" --filter \"- .git/\" --filter \"- .hg/\" --filter \"- Headers\" --filter \"- PrivateHeaders\" --filter \"- Modules\" \"${source}\" \"${destination}\"" + rsync -av --filter "- CVS/" --filter "- .svn/" --filter "- .git/" --filter "- .hg/" --filter "- Headers" --filter "- PrivateHeaders" --filter "- Modules" "${source}" "${destination}" + + local basename + basename="$(basename -s .framework "$1")" + binary="${destination}/${basename}.framework/${basename}" + if ! [ -r "$binary" ]; then + binary="${destination}/${basename}" + fi + + # Strip invalid architectures so "fat" simulator / device frameworks work on device + if [[ "$(file "$binary")" == *"dynamically linked shared library"* ]]; then + strip_invalid_archs "$binary" + fi + + # Resign the code if required by the build settings to avoid unstable apps + code_sign_if_enabled "${destination}/$(basename "$1")" + + # Embed linked Swift runtime libraries. No longer necessary as of Xcode 7. + if [ "${XCODE_VERSION_MAJOR}" -lt 7 ]; then + local swift_runtime_libs + swift_runtime_libs=$(xcrun otool -LX "$binary" | grep --color=never @rpath/libswift | sed -E s/@rpath\\/\(.+dylib\).*/\\1/g | uniq -u && exit ${PIPESTATUS[0]}) + for lib in $swift_runtime_libs; do + echo "rsync -auv \"${SWIFT_STDLIB_PATH}/${lib}\" \"${destination}\"" + rsync -auv "${SWIFT_STDLIB_PATH}/${lib}" "${destination}" + code_sign_if_enabled "${destination}/${lib}" + done + fi +} + +# Signs a framework with the provided identity +code_sign_if_enabled() { + if [ -n "${EXPANDED_CODE_SIGN_IDENTITY}" -a "${CODE_SIGNING_REQUIRED}" != "NO" -a "${CODE_SIGNING_ALLOWED}" != "NO" ]; then + # Use the current code_sign_identitiy + echo "Code Signing $1 with Identity ${EXPANDED_CODE_SIGN_IDENTITY_NAME}" + echo "/usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements \"$1\"" + /usr/bin/codesign --force --sign ${EXPANDED_CODE_SIGN_IDENTITY} ${OTHER_CODE_SIGN_FLAGS} --preserve-metadata=identifier,entitlements "$1" + fi +} + +# Strip invalid architectures +strip_invalid_archs() { + binary="$1" + # Get architectures for current file + archs="$(lipo -info "$binary" | rev | cut -d ':' -f1 | rev)" + stripped="" + for arch in $archs; do + if ! [[ "${VALID_ARCHS}" == *"$arch"* ]]; then + # Strip non-valid architectures in-place + lipo -remove "$arch" -output "$binary" "$binary" || exit 1 + stripped="$stripped $arch" + fi + done + if [[ "$stripped" ]]; then + echo "Stripped $binary of architectures:$stripped" + fi +} + + +if [[ "$CONFIGURATION" == "Debug" ]]; then + install_framework "$BUILT_PRODUCTS_DIR/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.framework" +fi +if [[ "$CONFIGURATION" == "Release" ]]; then + install_framework "$BUILT_PRODUCTS_DIR/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.framework" +fi diff --git a/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-resources.sh b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-resources.sh new file mode 100755 index 0000000..0a15615 --- /dev/null +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-resources.sh @@ -0,0 +1,102 @@ +#!/bin/sh +set -e + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + +RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt +> "$RESOURCES_TO_COPY" + +XCASSET_FILES=() + +case "${TARGETED_DEVICE_FAMILY}" in + 1,2) + TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" + ;; + 1) + TARGET_DEVICE_ARGS="--target-device iphone" + ;; + 2) + TARGET_DEVICE_ARGS="--target-device ipad" + ;; + *) + TARGET_DEVICE_ARGS="--target-device mac" + ;; +esac + +realpath() { + DIRECTORY="$(cd "${1%/*}" && pwd)" + FILENAME="${1##*/}" + echo "$DIRECTORY/$FILENAME" +} + +install_resource() +{ + if [[ "$1" = /* ]] ; then + RESOURCE_PATH="$1" + else + RESOURCE_PATH="${PODS_ROOT}/$1" + fi + if [[ ! -e "$RESOURCE_PATH" ]] ; then + cat << EOM +error: Resource "$RESOURCE_PATH" not found. Run 'pod install' to update the copy resources script. +EOM + exit 1 + fi + case $RESOURCE_PATH in + *.storyboard) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .storyboard`.storyboardc" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.xib) + echo "ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile ${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib $RESOURCE_PATH --sdk ${SDKROOT} ${TARGET_DEVICE_ARGS}" + ibtool --reference-external-strings-file --errors --warnings --notices --minimum-deployment-target ${!DEPLOYMENT_TARGET_SETTING_NAME} --output-format human-readable-text --compile "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename \"$RESOURCE_PATH\" .xib`.nib" "$RESOURCE_PATH" --sdk "${SDKROOT}" ${TARGET_DEVICE_ARGS} + ;; + *.framework) + echo "mkdir -p ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + mkdir -p "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + echo "rsync -av $RESOURCE_PATH ${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + rsync -av "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" + ;; + *.xcdatamodel) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH"`.mom\"" + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodel`.mom" + ;; + *.xcdatamodeld) + echo "xcrun momc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd\"" + xcrun momc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcdatamodeld`.momd" + ;; + *.xcmappingmodel) + echo "xcrun mapc \"$RESOURCE_PATH\" \"${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm\"" + xcrun mapc "$RESOURCE_PATH" "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$RESOURCE_PATH" .xcmappingmodel`.cdm" + ;; + *.xcassets) + ABSOLUTE_XCASSET_FILE=$(realpath "$RESOURCE_PATH") + XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") + ;; + *) + echo "$RESOURCE_PATH" + echo "$RESOURCE_PATH" >> "$RESOURCES_TO_COPY" + ;; + esac +} + +mkdir -p "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${TARGET_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +if [[ "${ACTION}" == "install" ]] && [[ "${SKIP_INSTALL}" == "NO" ]]; then + mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" + rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi +rm -f "$RESOURCES_TO_COPY" + +if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] +then + # Find all other xcassets (this unfortunately includes those of path pods and other targets). + OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) + while read line; do + if [[ $line != "`realpath $PODS_ROOT`*" ]]; then + XCASSET_FILES+=("$line") + fi + done <<<"$OTHER_XCASSETS" + + printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun actool --output-format human-readable-text --notices --warnings --platform "${PLATFORM_NAME}" --minimum-deployment-target "${!DEPLOYMENT_TARGET_SETTING_NAME}" ${TARGET_DEVICE_ARGS} --compress-pngs --compile "${BUILT_PRODUCTS_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" +fi diff --git a/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h new file mode 100644 index 0000000..504559f --- /dev/null +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h @@ -0,0 +1,6 @@ +#import + + +FOUNDATION_EXPORT double Pods_CSStickyHeaderFlowLayoutDemoVersionNumber; +FOUNDATION_EXPORT const unsigned char Pods_CSStickyHeaderFlowLayoutDemoVersionString[]; + diff --git a/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig new file mode 100644 index 0000000..75ef085 --- /dev/null +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.debug.xcconfig @@ -0,0 +1,10 @@ +EMBEDDED_CONTENT_CONTAINS_SWIFT = YES +FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/CSStickyHeaderFlowLayout" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' +OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "CSStickyHeaderFlowLayout" +OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.modulemap b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.modulemap new file mode 100644 index 0000000..bf0581e --- /dev/null +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.modulemap @@ -0,0 +1,6 @@ +framework module Pods_CSStickyHeaderFlowLayoutDemo { + umbrella header "Pods-CSStickyHeaderFlowLayoutDemo-umbrella.h" + + export * + module * { export * } +} diff --git a/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig new file mode 100644 index 0000000..75ef085 --- /dev/null +++ b/Project/Pods/Target Support Files/Pods-CSStickyHeaderFlowLayoutDemo/Pods-CSStickyHeaderFlowLayoutDemo.release.xcconfig @@ -0,0 +1,10 @@ +EMBEDDED_CONTENT_CONTAINS_SWIFT = YES +FRAMEWORK_SEARCH_PATHS = $(inherited) "$PODS_CONFIGURATION_BUILD_DIR/CSStickyHeaderFlowLayout" +GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 +LD_RUNPATH_SEARCH_PATHS = $(inherited) '@executable_path/Frameworks' '@loader_path/Frameworks' +OTHER_CFLAGS = $(inherited) -iquote "$PODS_CONFIGURATION_BUILD_DIR/CSStickyHeaderFlowLayout/CSStickyHeaderFlowLayout.framework/Headers" +OTHER_LDFLAGS = $(inherited) -framework "CSStickyHeaderFlowLayout" +OTHER_SWIFT_FLAGS = $(inherited) "-D" "COCOAPODS" +PODS_BUILD_DIR = $BUILD_DIR +PODS_CONFIGURATION_BUILD_DIR = $PODS_BUILD_DIR/$(CONFIGURATION)$(EFFECTIVE_PLATFORM_NAME) +PODS_ROOT = ${SRCROOT}/Pods diff --git a/Project/Pods/Target Support Files/Pods/Pods-dummy.m b/Project/Pods/Target Support Files/Pods/Pods-dummy.m deleted file mode 100644 index ade64bd..0000000 --- a/Project/Pods/Target Support Files/Pods/Pods-dummy.m +++ /dev/null @@ -1,5 +0,0 @@ -#import -@interface PodsDummy_Pods : NSObject -@end -@implementation PodsDummy_Pods -@end diff --git a/Project/Pods/Target Support Files/Pods/Pods-resources.sh b/Project/Pods/Target Support Files/Pods/Pods-resources.sh deleted file mode 100755 index ea685a2..0000000 --- a/Project/Pods/Target Support Files/Pods/Pods-resources.sh +++ /dev/null @@ -1,95 +0,0 @@ -#!/bin/sh -set -e - -mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - -RESOURCES_TO_COPY=${PODS_ROOT}/resources-to-copy-${TARGETNAME}.txt -> "$RESOURCES_TO_COPY" - -XCASSET_FILES=() - -realpath() { - DIRECTORY="$(cd "${1%/*}" && pwd)" - FILENAME="${1##*/}" - echo "$DIRECTORY/$FILENAME" -} - -install_resource() -{ - case $1 in - *.storyboard) - 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}" - 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}" - ;; - *.xib) - 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}" - 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}" - ;; - *.framework) - echo "mkdir -p ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - mkdir -p "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - echo "rsync -av ${PODS_ROOT}/$1 ${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - rsync -av "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}" - ;; - *.xcdatamodel) - echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1"`.mom\"" - xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodel`.mom" - ;; - *.xcdatamodeld) - echo "xcrun momc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd\"" - xcrun momc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcdatamodeld`.momd" - ;; - *.xcmappingmodel) - echo "xcrun mapc \"${PODS_ROOT}/$1\" \"${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm\"" - xcrun mapc "${PODS_ROOT}/$1" "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}/`basename "$1" .xcmappingmodel`.cdm" - ;; - *.xcassets) - ABSOLUTE_XCASSET_FILE=$(realpath "${PODS_ROOT}/$1") - XCASSET_FILES+=("$ABSOLUTE_XCASSET_FILE") - ;; - /*) - echo "$1" - echo "$1" >> "$RESOURCES_TO_COPY" - ;; - *) - echo "${PODS_ROOT}/$1" - echo "${PODS_ROOT}/$1" >> "$RESOURCES_TO_COPY" - ;; - esac -} - -mkdir -p "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${CONFIGURATION_BUILD_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -if [[ "${ACTION}" == "install" ]]; then - mkdir -p "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" - rsync -avr --copy-links --no-relative --exclude '*/.svn/*' --files-from="$RESOURCES_TO_COPY" / "${INSTALL_DIR}/${UNLOCALIZED_RESOURCES_FOLDER_PATH}" -fi -rm -f "$RESOURCES_TO_COPY" - -if [[ -n "${WRAPPER_EXTENSION}" ]] && [ "`xcrun --find actool`" ] && [ -n "$XCASSET_FILES" ] -then - case "${TARGETED_DEVICE_FAMILY}" in - 1,2) - TARGET_DEVICE_ARGS="--target-device ipad --target-device iphone" - ;; - 1) - TARGET_DEVICE_ARGS="--target-device iphone" - ;; - 2) - TARGET_DEVICE_ARGS="--target-device ipad" - ;; - *) - TARGET_DEVICE_ARGS="--target-device mac" - ;; - esac - - # Find all other xcassets (this unfortunately includes those of path pods and other targets). - OTHER_XCASSETS=$(find "$PWD" -iname "*.xcassets" -type d) - while read line; do - if [[ $line != "`realpath $PODS_ROOT`*" ]]; then - XCASSET_FILES+=("$line") - fi - done <<<"$OTHER_XCASSETS" - - printf "%s\0" "${XCASSET_FILES[@]}" | xargs -0 xcrun 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}" -fi diff --git a/Project/Pods/Target Support Files/Pods/Pods.debug.xcconfig b/Project/Pods/Target Support Files/Pods/Pods.debug.xcconfig deleted file mode 100644 index a94e0c5..0000000 --- a/Project/Pods/Target Support Files/Pods/Pods.debug.xcconfig +++ /dev/null @@ -1,5 +0,0 @@ -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/CSStickyHeaderFlowLayout" -OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/CSStickyHeaderFlowLayout" -OTHER_LDFLAGS = $(inherited) -ObjC -l"CSStickyHeaderFlowLayout" -PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/Project/Pods/Target Support Files/Pods/Pods.release.xcconfig b/Project/Pods/Target Support Files/Pods/Pods.release.xcconfig deleted file mode 100644 index a94e0c5..0000000 --- a/Project/Pods/Target Support Files/Pods/Pods.release.xcconfig +++ /dev/null @@ -1,5 +0,0 @@ -GCC_PREPROCESSOR_DEFINITIONS = $(inherited) COCOAPODS=1 -HEADER_SEARCH_PATHS = $(inherited) "${PODS_ROOT}/Headers/Public" "${PODS_ROOT}/Headers/Public/CSStickyHeaderFlowLayout" -OTHER_CFLAGS = $(inherited) -isystem "${PODS_ROOT}/Headers/Public" -isystem "${PODS_ROOT}/Headers/Public/CSStickyHeaderFlowLayout" -OTHER_LDFLAGS = $(inherited) -ObjC -l"CSStickyHeaderFlowLayout" -PODS_ROOT = ${SRCROOT}/Pods \ No newline at end of file diff --git a/Project/SwiftDemo/SwiftDemo.xcodeproj/project.pbxproj b/Project/SwiftDemo/SwiftDemo.xcodeproj/project.pbxproj deleted file mode 100644 index 22189ee..0000000 --- a/Project/SwiftDemo/SwiftDemo.xcodeproj/project.pbxproj +++ /dev/null @@ -1,438 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 1A3BEB111B56C602009644C9 /* CSStickyHeaderFlowLayout.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 1A3BEB101B56C602009644C9 /* CSStickyHeaderFlowLayout.framework */; }; - 1A3BEB171B56C8E2009644C9 /* CollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A3BEB161B56C8E2009644C9 /* CollectionViewCell.swift */; }; - 1A3BEB191B56CBE9009644C9 /* CollectionParallaxHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A3BEB181B56CBE9009644C9 /* CollectionParallaxHeader.swift */; }; - 1A4229DA1B608D74009C66CD /* CollectionViewSectionHeader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A4229D91B608D74009C66CD /* CollectionViewSectionHeader.swift */; }; - 1A4B2F311B56C513007F67CC /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A4B2F301B56C513007F67CC /* AppDelegate.swift */; }; - 1A4B2F331B56C513007F67CC /* CollectionViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A4B2F321B56C513007F67CC /* CollectionViewController.swift */; }; - 1A4B2F381B56C513007F67CC /* Images.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 1A4B2F371B56C513007F67CC /* Images.xcassets */; }; - 1A4B2F3B1B56C513007F67CC /* LaunchScreen.xib in Resources */ = {isa = PBXBuildFile; fileRef = 1A4B2F391B56C513007F67CC /* LaunchScreen.xib */; }; - 1A4B2F471B56C513007F67CC /* SwiftDemoTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1A4B2F461B56C513007F67CC /* SwiftDemoTests.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 1A4B2F411B56C513007F67CC /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 1A4B2F231B56C513007F67CC /* Project object */; - proxyType = 1; - remoteGlobalIDString = 1A4B2F2A1B56C513007F67CC; - remoteInfo = SwiftDemo; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXFileReference section */ - 1A3BEB101B56C602009644C9 /* CSStickyHeaderFlowLayout.framework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.framework; name = CSStickyHeaderFlowLayout.framework; path = "../build/Debug-iphoneos/CSStickyHeaderFlowLayout.framework"; sourceTree = ""; }; - 1A3BEB131B56C65F009644C9 /* SwiftDemo-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "SwiftDemo-Bridging-Header.h"; sourceTree = ""; }; - 1A3BEB161B56C8E2009644C9 /* CollectionViewCell.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CollectionViewCell.swift; sourceTree = ""; }; - 1A3BEB181B56CBE9009644C9 /* CollectionParallaxHeader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CollectionParallaxHeader.swift; sourceTree = ""; }; - 1A4229D91B608D74009C66CD /* CollectionViewSectionHeader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CollectionViewSectionHeader.swift; sourceTree = ""; }; - 1A4B2F2B1B56C513007F67CC /* SwiftDemo.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SwiftDemo.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 1A4B2F2F1B56C513007F67CC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 1A4B2F301B56C513007F67CC /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 1A4B2F321B56C513007F67CC /* CollectionViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CollectionViewController.swift; sourceTree = ""; }; - 1A4B2F371B56C513007F67CC /* Images.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Images.xcassets; sourceTree = ""; }; - 1A4B2F3A1B56C513007F67CC /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/LaunchScreen.xib; sourceTree = ""; }; - 1A4B2F401B56C513007F67CC /* SwiftDemoTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = SwiftDemoTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 1A4B2F451B56C513007F67CC /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 1A4B2F461B56C513007F67CC /* SwiftDemoTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SwiftDemoTests.swift; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 1A4B2F281B56C513007F67CC /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 1A3BEB111B56C602009644C9 /* CSStickyHeaderFlowLayout.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1A4B2F3D1B56C513007F67CC /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 1A4B2F221B56C513007F67CC = { - isa = PBXGroup; - children = ( - 1A3BEB101B56C602009644C9 /* CSStickyHeaderFlowLayout.framework */, - 1A4B2F2D1B56C513007F67CC /* SwiftDemo */, - 1A4B2F431B56C513007F67CC /* SwiftDemoTests */, - 1A4B2F2C1B56C513007F67CC /* Products */, - ); - sourceTree = ""; - }; - 1A4B2F2C1B56C513007F67CC /* Products */ = { - isa = PBXGroup; - children = ( - 1A4B2F2B1B56C513007F67CC /* SwiftDemo.app */, - 1A4B2F401B56C513007F67CC /* SwiftDemoTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 1A4B2F2D1B56C513007F67CC /* SwiftDemo */ = { - isa = PBXGroup; - children = ( - 1A4B2F301B56C513007F67CC /* AppDelegate.swift */, - 1A4B2F321B56C513007F67CC /* CollectionViewController.swift */, - 1A3BEB161B56C8E2009644C9 /* CollectionViewCell.swift */, - 1A3BEB181B56CBE9009644C9 /* CollectionParallaxHeader.swift */, - 1A4229D91B608D74009C66CD /* CollectionViewSectionHeader.swift */, - 1A4B2F371B56C513007F67CC /* Images.xcassets */, - 1A4B2F391B56C513007F67CC /* LaunchScreen.xib */, - 1A4B2F2E1B56C513007F67CC /* Supporting Files */, - 1A3BEB131B56C65F009644C9 /* SwiftDemo-Bridging-Header.h */, - ); - path = SwiftDemo; - sourceTree = ""; - }; - 1A4B2F2E1B56C513007F67CC /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 1A4B2F2F1B56C513007F67CC /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; - 1A4B2F431B56C513007F67CC /* SwiftDemoTests */ = { - isa = PBXGroup; - children = ( - 1A4B2F461B56C513007F67CC /* SwiftDemoTests.swift */, - 1A4B2F441B56C513007F67CC /* Supporting Files */, - ); - path = SwiftDemoTests; - sourceTree = ""; - }; - 1A4B2F441B56C513007F67CC /* Supporting Files */ = { - isa = PBXGroup; - children = ( - 1A4B2F451B56C513007F67CC /* Info.plist */, - ); - name = "Supporting Files"; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 1A4B2F2A1B56C513007F67CC /* SwiftDemo */ = { - isa = PBXNativeTarget; - buildConfigurationList = 1A4B2F4A1B56C513007F67CC /* Build configuration list for PBXNativeTarget "SwiftDemo" */; - buildPhases = ( - 1A4B2F271B56C513007F67CC /* Sources */, - 1A4B2F281B56C513007F67CC /* Frameworks */, - 1A4B2F291B56C513007F67CC /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = SwiftDemo; - productName = SwiftDemo; - productReference = 1A4B2F2B1B56C513007F67CC /* SwiftDemo.app */; - productType = "com.apple.product-type.application"; - }; - 1A4B2F3F1B56C513007F67CC /* SwiftDemoTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 1A4B2F4D1B56C513007F67CC /* Build configuration list for PBXNativeTarget "SwiftDemoTests" */; - buildPhases = ( - 1A4B2F3C1B56C513007F67CC /* Sources */, - 1A4B2F3D1B56C513007F67CC /* Frameworks */, - 1A4B2F3E1B56C513007F67CC /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 1A4B2F421B56C513007F67CC /* PBXTargetDependency */, - ); - name = SwiftDemoTests; - productName = SwiftDemoTests; - productReference = 1A4B2F401B56C513007F67CC /* SwiftDemoTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 1A4B2F231B56C513007F67CC /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 0700; - LastUpgradeCheck = 0630; - ORGANIZATIONNAME = "James Tang"; - TargetAttributes = { - 1A4B2F2A1B56C513007F67CC = { - CreatedOnToolsVersion = 6.3.1; - }; - 1A4B2F3F1B56C513007F67CC = { - CreatedOnToolsVersion = 6.3.1; - TestTargetID = 1A4B2F2A1B56C513007F67CC; - }; - }; - }; - buildConfigurationList = 1A4B2F261B56C513007F67CC /* Build configuration list for PBXProject "SwiftDemo" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 1A4B2F221B56C513007F67CC; - productRefGroup = 1A4B2F2C1B56C513007F67CC /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 1A4B2F2A1B56C513007F67CC /* SwiftDemo */, - 1A4B2F3F1B56C513007F67CC /* SwiftDemoTests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 1A4B2F291B56C513007F67CC /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1A4B2F3B1B56C513007F67CC /* LaunchScreen.xib in Resources */, - 1A4B2F381B56C513007F67CC /* Images.xcassets in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1A4B2F3E1B56C513007F67CC /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 1A4B2F271B56C513007F67CC /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1A4229DA1B608D74009C66CD /* CollectionViewSectionHeader.swift in Sources */, - 1A4B2F331B56C513007F67CC /* CollectionViewController.swift in Sources */, - 1A4B2F311B56C513007F67CC /* AppDelegate.swift in Sources */, - 1A3BEB171B56C8E2009644C9 /* CollectionViewCell.swift in Sources */, - 1A3BEB191B56CBE9009644C9 /* CollectionParallaxHeader.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 1A4B2F3C1B56C513007F67CC /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 1A4B2F471B56C513007F67CC /* SwiftDemoTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 1A4B2F421B56C513007F67CC /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 1A4B2F2A1B56C513007F67CC /* SwiftDemo */; - targetProxy = 1A4B2F411B56C513007F67CC /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 1A4B2F391B56C513007F67CC /* LaunchScreen.xib */ = { - isa = PBXVariantGroup; - children = ( - 1A4B2F3A1B56C513007F67CC /* Base */, - ); - name = LaunchScreen.xib; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 1A4B2F481B56C513007F67CC /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_SYMBOLS_PRIVATE_EXTERN = NO; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - }; - name = Debug; - }; - 1A4B2F491B56C513007F67CC /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 8.3; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 1A4B2F4B1B56C513007F67CC /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - INFOPLIST_FILE = SwiftDemo/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "SwiftDemo/SwiftDemo-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - }; - name = Debug; - }; - 1A4B2F4C1B56C513007F67CC /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - INFOPLIST_FILE = SwiftDemo/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "SwiftDemo/SwiftDemo-Bridging-Header.h"; - }; - name = Release; - }; - 1A4B2F4E1B56C513007F67CC /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - INFOPLIST_FILE = SwiftDemoTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SwiftDemo.app/SwiftDemo"; - }; - name = Debug; - }; - 1A4B2F4F1B56C513007F67CC /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - FRAMEWORK_SEARCH_PATHS = ( - "$(SDKROOT)/Developer/Library/Frameworks", - "$(inherited)", - ); - INFOPLIST_FILE = SwiftDemoTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/SwiftDemo.app/SwiftDemo"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 1A4B2F261B56C513007F67CC /* Build configuration list for PBXProject "SwiftDemo" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1A4B2F481B56C513007F67CC /* Debug */, - 1A4B2F491B56C513007F67CC /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 1A4B2F4A1B56C513007F67CC /* Build configuration list for PBXNativeTarget "SwiftDemo" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1A4B2F4B1B56C513007F67CC /* Debug */, - 1A4B2F4C1B56C513007F67CC /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 1A4B2F4D1B56C513007F67CC /* Build configuration list for PBXNativeTarget "SwiftDemoTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 1A4B2F4E1B56C513007F67CC /* Debug */, - 1A4B2F4F1B56C513007F67CC /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 1A4B2F231B56C513007F67CC /* Project object */; -} diff --git a/Project/SwiftDemo/SwiftDemo/AppDelegate.swift b/Project/SwiftDemo/SwiftDemo/AppDelegate.swift deleted file mode 100644 index e31cb63..0000000 --- a/Project/SwiftDemo/SwiftDemo/AppDelegate.swift +++ /dev/null @@ -1,54 +0,0 @@ -// -// AppDelegate.swift -// SwiftDemo -// -// Created by James Tang on 16/7/15. -// Copyright (c) 2015 James Tang. All rights reserved. -// - -import UIKit - -@UIApplicationMain -class AppDelegate: UIResponder, UIApplicationDelegate { - - var window: UIWindow? - - - func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool { - // Override point for customization after application launch. - - let stickyHeaderFlowLayout = CSStickyHeaderFlowLayout() - let collectionViewController = CollectionViewController(collectionViewLayout: stickyHeaderFlowLayout) - - let window = UIWindow(frame: UIScreen.mainScreen().bounds) - window.rootViewController = collectionViewController - window.makeKeyAndVisible() - self.window = window - return true - } - - func applicationWillResignActive(application: UIApplication) { - // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game. - } - - func applicationDidEnterBackground(application: UIApplication) { - // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. - // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. - } - - func applicationWillEnterForeground(application: UIApplication) { - // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background. - } - - func applicationDidBecomeActive(application: UIApplication) { - // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. - } - - func applicationWillTerminate(application: UIApplication) { - // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. - } - - -} - diff --git a/Project/SwiftDemo/SwiftDemo/Base.lproj/LaunchScreen.xib b/Project/SwiftDemo/SwiftDemo/Base.lproj/LaunchScreen.xib deleted file mode 100644 index 9f93f96..0000000 --- a/Project/SwiftDemo/SwiftDemo/Base.lproj/LaunchScreen.xib +++ /dev/null @@ -1,41 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Project/SwiftDemo/SwiftDemo/CollectionParallaxHeader.swift b/Project/SwiftDemo/SwiftDemo/CollectionParallaxHeader.swift deleted file mode 100644 index 60fc7e9..0000000 --- a/Project/SwiftDemo/SwiftDemo/CollectionParallaxHeader.swift +++ /dev/null @@ -1,40 +0,0 @@ -// -// CollectionParallaxHeader.swift -// SwiftDemo -// -// Created by James Tang on 16/7/15. -// Copyright © 2015 James Tang. All rights reserved. -// - -import UIKit - -class CollectionParallaxHeader: UICollectionReusableView { - - - private var imageView : UIImageView? - - override init(frame: CGRect) { - super.init(frame: frame) - self.backgroundColor = UIColor.lightGrayColor() - - self.clipsToBounds = true - - let bounds = CGRectMake(0, 0, CGRectGetMaxX(frame), CGRectGetMaxY(frame)) - - let imageView = UIImageView(frame: bounds) - imageView.contentMode = UIViewContentMode.ScaleAspectFill - imageView.image = UIImage(named: "success-baby") - self.imageView = imageView - self.addSubview(imageView) - } - - required init?(coder aDecoder: NSCoder) { - super.init(coder: aDecoder) - } - - override func layoutSubviews() { - super.layoutSubviews() - self.imageView?.frame = self.bounds - } - -} diff --git a/Project/SwiftDemo/SwiftDemo/CollectionViewCell.swift b/Project/SwiftDemo/SwiftDemo/CollectionViewCell.swift deleted file mode 100644 index 220133a..0000000 --- a/Project/SwiftDemo/SwiftDemo/CollectionViewCell.swift +++ /dev/null @@ -1,45 +0,0 @@ -// -// CollectionViewCell.swift -// SwiftDemo -// -// Created by James Tang on 16/7/15. -// Copyright © 2015 James Tang. All rights reserved. -// - -import UIKit - -class CollectionViewCell: UICollectionViewCell { - - var text : String? { - didSet { - self.reloadData() - } - } - - private var textLabel : UILabel? - - override init(frame: CGRect) { - super.init(frame: frame) - - self.backgroundColor = UIColor.whiteColor() - - let bounds = CGRectMake(0, 0, CGRectGetMaxX(frame), CGRectGetMaxY(frame)) - let label = UILabel(frame: bounds) - label.autoresizingMask = [UIViewAutoresizing.FlexibleHeight, UIViewAutoresizing.FlexibleWidth] - self.textLabel = label - self.addSubview(label) - } - - required init?(coder aDecoder: NSCoder) { - super.init(coder: aDecoder) - } - - func reloadData() { - self.textLabel?.text = self.text - } - - override func layoutSubviews() { - super.layoutSubviews() - self.textLabel?.frame = self.bounds - } -} diff --git a/Project/SwiftDemo/SwiftDemo/CollectionViewController.swift b/Project/SwiftDemo/SwiftDemo/CollectionViewController.swift deleted file mode 100644 index 9ee41f4..0000000 --- a/Project/SwiftDemo/SwiftDemo/CollectionViewController.swift +++ /dev/null @@ -1,69 +0,0 @@ -// -// ViewController.swift -// SwiftDemo -// -// Created by James Tang on 16/7/15. -// Copyright (c) 2015 James Tang. All rights reserved. -// - -import UIKit - -class CollectionViewController: UICollectionViewController { - - var items : [String] = ["CSStickyHeaderFlowLayout basic example", "Example to initialize in code", "As well as in Swift", "Please Enjoy"] - - private var layout : CSStickyHeaderFlowLayout? { - return self.collectionView?.collectionViewLayout as? CSStickyHeaderFlowLayout - } - - override func viewDidLoad() { - super.viewDidLoad() - - self.collectionView?.alwaysBounceVertical = true - self.view.backgroundColor = UIColor.whiteColor() - - // Setup Cell - self.collectionView?.registerClass(CollectionViewCell.self, forCellWithReuseIdentifier: "cell") - self.layout?.itemSize = CGSizeMake(self.view.frame.size.width, 44) - - // Setup Header - self.collectionView?.registerClass(CollectionParallaxHeader.self, forSupplementaryViewOfKind: CSStickyHeaderParallaxHeader, withReuseIdentifier: "parallaxHeader") - self.layout?.parallaxHeaderReferenceSize = CGSizeMake(self.view.frame.size.width, 100) - - // Setup Section Header - self.collectionView?.registerClass(CollectionViewSectionHeader.self, forSupplementaryViewOfKind: UICollectionElementKindSectionHeader, withReuseIdentifier: "sectionHeader") - self.layout?.headerReferenceSize = CGSizeMake(320, 40) - } - - // Cells - - override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int { - return self.items.count - } - - override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell { - - let cell = collectionView.dequeueReusableCellWithReuseIdentifier("cell", forIndexPath: indexPath) as! CollectionViewCell - cell.text = self.items[indexPath.row] - return cell - } - - // Parallax Header - - override func collectionView(collectionView: UICollectionView, viewForSupplementaryElementOfKind kind: String, atIndexPath indexPath: NSIndexPath) -> UICollectionReusableView { - - if kind == CSStickyHeaderParallaxHeader { - let view = collectionView.dequeueReusableSupplementaryViewOfKind(kind, withReuseIdentifier: "parallaxHeader", forIndexPath: indexPath) - return view - } else if kind == UICollectionElementKindSectionHeader { - let view = collectionView.dequeueReusableSupplementaryViewOfKind(kind, withReuseIdentifier: "sectionHeader", forIndexPath: indexPath) - view.backgroundColor = UIColor.lightGrayColor() - return view - } - - return UICollectionReusableView() - - } - -} - diff --git a/Project/SwiftDemo/SwiftDemo/CollectionViewSectionHeader.swift b/Project/SwiftDemo/SwiftDemo/CollectionViewSectionHeader.swift deleted file mode 100644 index d160ed8..0000000 --- a/Project/SwiftDemo/SwiftDemo/CollectionViewSectionHeader.swift +++ /dev/null @@ -1,29 +0,0 @@ -// -// CollectionViewSectionHeader.swift -// SwiftDemo -// -// Created by James Tang on 23/7/15. -// Copyright © 2015 James Tang. All rights reserved. -// - -import UIKit - -class CollectionViewSectionHeader: UICollectionReusableView { - - let label = UILabel() - override init(frame: CGRect) { - super.init(frame: frame) - commonInit() - } - - required init?(coder aDecoder: NSCoder) { - super.init(coder: aDecoder) - commonInit() - } - - func commonInit() { - self.addSubview(label) - label.frame = self.bounds - label.text = UICollectionElementKindSectionHeader - } -} diff --git a/Project/SwiftDemo/SwiftDemo/Images.xcassets/AppIcon.appiconset/Contents.json b/Project/SwiftDemo/SwiftDemo/Images.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 118c98f..0000000 --- a/Project/SwiftDemo/SwiftDemo/Images.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,38 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Project/SwiftDemo/SwiftDemo/Images.xcassets/Contents.json b/Project/SwiftDemo/SwiftDemo/Images.xcassets/Contents.json deleted file mode 100644 index da4a164..0000000 --- a/Project/SwiftDemo/SwiftDemo/Images.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Project/SwiftDemo/SwiftDemo/Images.xcassets/success-baby.imageset/Contents.json b/Project/SwiftDemo/SwiftDemo/Images.xcassets/success-baby.imageset/Contents.json deleted file mode 100644 index c79515f..0000000 --- a/Project/SwiftDemo/SwiftDemo/Images.xcassets/success-baby.imageset/Contents.json +++ /dev/null @@ -1,21 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "filename" : "success-baby.png", - "scale" : "1x" - }, - { - "idiom" : "universal", - "scale" : "2x" - }, - { - "idiom" : "universal", - "scale" : "3x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Project/SwiftDemo/SwiftDemo/Images.xcassets/success-baby.imageset/success-baby.png b/Project/SwiftDemo/SwiftDemo/Images.xcassets/success-baby.imageset/success-baby.png deleted file mode 100644 index 753bf27..0000000 Binary files a/Project/SwiftDemo/SwiftDemo/Images.xcassets/success-baby.imageset/success-baby.png and /dev/null differ diff --git a/Project/SwiftDemo/SwiftDemo/Info.plist b/Project/SwiftDemo/SwiftDemo/Info.plist deleted file mode 100644 index 83351f2..0000000 --- a/Project/SwiftDemo/SwiftDemo/Info.plist +++ /dev/null @@ -1,38 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.jamztang.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - - diff --git a/Project/SwiftDemo/SwiftDemo/SwiftDemo-Bridging-Header.h b/Project/SwiftDemo/SwiftDemo/SwiftDemo-Bridging-Header.h deleted file mode 100644 index 311503e..0000000 --- a/Project/SwiftDemo/SwiftDemo/SwiftDemo-Bridging-Header.h +++ /dev/null @@ -1,6 +0,0 @@ -// -// Use this file to import your target's public headers that you would like to expose to Swift. -// - - -#import \ No newline at end of file diff --git a/Project/SwiftDemo/SwiftDemoTests/Info.plist b/Project/SwiftDemo/SwiftDemoTests/Info.plist deleted file mode 100644 index 609467f..0000000 --- a/Project/SwiftDemo/SwiftDemoTests/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - com.jamztang.$(PRODUCT_NAME:rfc1034identifier) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleSignature - ???? - CFBundleVersion - 1 - - diff --git a/Project/SwiftDemo/SwiftDemoTests/SwiftDemoTests.swift b/Project/SwiftDemo/SwiftDemoTests/SwiftDemoTests.swift deleted file mode 100644 index dea3ced..0000000 --- a/Project/SwiftDemo/SwiftDemoTests/SwiftDemoTests.swift +++ /dev/null @@ -1,36 +0,0 @@ -// -// SwiftDemoTests.swift -// SwiftDemoTests -// -// Created by James Tang on 16/7/15. -// Copyright (c) 2015 James Tang. All rights reserved. -// - -import UIKit -import XCTest - -class SwiftDemoTests: XCTestCase { - - override func setUp() { - super.setUp() - // Put setup code here. This method is called before the invocation of each test method in the class. - } - - override func tearDown() { - // Put teardown code here. This method is called after the invocation of each test method in the class. - super.tearDown() - } - - func testExample() { - // This is an example of a functional test case. - XCTAssert(true, "Pass") - } - - func testPerformanceExample() { - // This is an example of a performance test case. - self.measureBlock() { - // Put the code you want to measure the time of here. - } - } - -}