Skip to content

Commit a2f8155

Browse files
committed
Merge branch 'master' of https://github.com/giulio92/GLTableCollectionView into develop
2 parents 9976ed4 + 1bbb480 commit a2f8155

9 files changed

Lines changed: 66 additions & 34 deletions

File tree

Classes/GLIndexedCollectionViewCell.xib

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,12 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="12118" systemVersion="16D32" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES">
2+
<document type="com.apple.InterfaceBuilder3.CocoaTouch.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES">
33
<device id="retina4_7" orientation="portrait">
44
<adaptation id="fullscreen"/>
55
</device>
66
<dependencies>
77
<deployment identifier="iOS"/>
8-
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12086"/>
8+
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
9+
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
910
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
1011
</dependencies>
1112
<objects>
@@ -18,6 +19,7 @@
1819
<rect key="frame" x="0.0" y="0.0" width="50" height="50"/>
1920
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
2021
</view>
22+
<viewLayoutGuide key="safeArea" id="hSX-Mj-jLC"/>
2123
</collectionViewCell>
2224
</objects>
2325
</document>

GLTableCollectionView.xcodeproj/project.pbxproj

Lines changed: 27 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -152,15 +152,17 @@
152152
attributes = {
153153
CLASSPREFIX = GL;
154154
LastSwiftUpdateCheck = 0800;
155-
LastUpgradeCheck = 0810;
155+
LastUpgradeCheck = 0900;
156156
ORGANIZATIONNAME = "Giulio Lombardo";
157157
TargetAttributes = {
158158
747CF8F81DE6EB010051A5FF = {
159159
CreatedOnToolsVersion = 8.0;
160+
LastSwiftMigration = 0900;
160161
ProvisioningStyle = Manual;
161162
};
162163
747CF90C1DE6EB010051A5FF = {
163164
CreatedOnToolsVersion = 8.0;
165+
LastSwiftMigration = 0900;
164166
ProvisioningStyle = Manual;
165167
TestTargetID = 747CF8F81DE6EB010051A5FF;
166168
};
@@ -282,15 +284,21 @@
282284
CLANG_CXX_LIBRARY = "libc++";
283285
CLANG_ENABLE_MODULES = YES;
284286
CLANG_ENABLE_OBJC_ARC = YES;
287+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
285288
CLANG_WARN_BOOL_CONVERSION = YES;
289+
CLANG_WARN_COMMA = YES;
286290
CLANG_WARN_CONSTANT_CONVERSION = YES;
287291
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
288292
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
289293
CLANG_WARN_EMPTY_BODY = YES;
290294
CLANG_WARN_ENUM_CONVERSION = YES;
291295
CLANG_WARN_INFINITE_RECURSION = YES;
292296
CLANG_WARN_INT_CONVERSION = YES;
297+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
298+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
293299
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
300+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
301+
CLANG_WARN_STRICT_PROTOTYPES = YES;
294302
CLANG_WARN_SUSPICIOUS_MOVE = YES;
295303
CLANG_WARN_SUSPICIOUS_MOVES = YES;
296304
CLANG_WARN_UNREACHABLE_CODE = YES;
@@ -315,7 +323,7 @@
315323
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
316324
GCC_WARN_UNUSED_FUNCTION = YES;
317325
GCC_WARN_UNUSED_VARIABLE = YES;
318-
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
326+
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
319327
MTL_ENABLE_DEBUG_INFO = YES;
320328
ONLY_ACTIVE_ARCH = YES;
321329
SDKROOT = iphoneos;
@@ -334,15 +342,21 @@
334342
CLANG_CXX_LIBRARY = "libc++";
335343
CLANG_ENABLE_MODULES = YES;
336344
CLANG_ENABLE_OBJC_ARC = YES;
345+
CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
337346
CLANG_WARN_BOOL_CONVERSION = YES;
347+
CLANG_WARN_COMMA = YES;
338348
CLANG_WARN_CONSTANT_CONVERSION = YES;
339349
CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR;
340350
CLANG_WARN_DOCUMENTATION_COMMENTS = YES;
341351
CLANG_WARN_EMPTY_BODY = YES;
342352
CLANG_WARN_ENUM_CONVERSION = YES;
343353
CLANG_WARN_INFINITE_RECURSION = YES;
344354
CLANG_WARN_INT_CONVERSION = YES;
355+
CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
356+
CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
345357
CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR;
358+
CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
359+
CLANG_WARN_STRICT_PROTOTYPES = YES;
346360
CLANG_WARN_SUSPICIOUS_MOVE = YES;
347361
CLANG_WARN_SUSPICIOUS_MOVES = YES;
348362
CLANG_WARN_UNREACHABLE_CODE = YES;
@@ -361,7 +375,7 @@
361375
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
362376
GCC_WARN_UNUSED_FUNCTION = YES;
363377
GCC_WARN_UNUSED_VARIABLE = YES;
364-
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
378+
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
365379
MTL_ENABLE_DEBUG_INFO = NO;
366380
SDKROOT = iphoneos;
367381
SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule";
@@ -400,13 +414,14 @@
400414
GCC_WARN_UNUSED_LABEL = YES;
401415
GCC_WARN_UNUSED_PARAMETER = YES;
402416
INFOPLIST_FILE = GLTableCollectionView/Info.plist;
403-
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
417+
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
404418
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
405419
PRODUCT_BUNDLE_IDENTIFIER = giuliolombardo.GLTableCollectionView;
406420
PRODUCT_NAME = "$(TARGET_NAME)";
407421
PROVISIONING_PROFILE = "";
408422
PROVISIONING_PROFILE_SPECIFIER = "";
409-
SWIFT_VERSION = 3.0;
423+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
424+
SWIFT_VERSION = 4.0;
410425
};
411426
name = Debug;
412427
};
@@ -439,11 +454,12 @@
439454
GCC_WARN_UNUSED_LABEL = YES;
440455
GCC_WARN_UNUSED_PARAMETER = YES;
441456
INFOPLIST_FILE = GLTableCollectionView/Info.plist;
442-
IPHONEOS_DEPLOYMENT_TARGET = 8.0;
457+
IPHONEOS_DEPLOYMENT_TARGET = 9.0;
443458
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks";
444459
PRODUCT_BUNDLE_IDENTIFIER = giuliolombardo.GLTableCollectionView;
445460
PRODUCT_NAME = "$(TARGET_NAME)";
446-
SWIFT_VERSION = 3.0;
461+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
462+
SWIFT_VERSION = 4.0;
447463
};
448464
name = Release;
449465
};
@@ -459,7 +475,8 @@
459475
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
460476
PRODUCT_BUNDLE_IDENTIFIER = giuliolombardo.GLTableCollectionViewTests;
461477
PRODUCT_NAME = "$(TARGET_NAME)";
462-
SWIFT_VERSION = 3.0;
478+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
479+
SWIFT_VERSION = 4.0;
463480
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/GLTableCollectionView.app/GLTableCollectionView";
464481
};
465482
name = Debug;
@@ -476,7 +493,8 @@
476493
LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks";
477494
PRODUCT_BUNDLE_IDENTIFIER = giuliolombardo.GLTableCollectionViewTests;
478495
PRODUCT_NAME = "$(TARGET_NAME)";
479-
SWIFT_VERSION = 3.0;
496+
SWIFT_SWIFT3_OBJC_INFERENCE = Default;
497+
SWIFT_VERSION = 4.0;
480498
TEST_HOST = "$(BUILT_PRODUCTS_DIR)/GLTableCollectionView.app/GLTableCollectionView";
481499
};
482500
name = Release;
Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
3+
<plist version="1.0">
4+
<dict/>
5+
</plist>

GLTableCollectionView.xcodeproj/xcshareddata/xcschemes/GLTableCollectionView.xcscheme

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
<?xml version="1.0" encoding="UTF-8"?>
22
<Scheme
3-
LastUpgradeVersion = "0810"
3+
LastUpgradeVersion = "0900"
44
version = "1.3">
55
<BuildAction
66
parallelizeBuildables = "YES"
@@ -40,6 +40,7 @@
4040
buildConfiguration = "Debug"
4141
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
4242
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
43+
language = ""
4344
shouldUseLaunchSchemeArgsEnv = "YES">
4445
<Testables>
4546
<TestableReference
@@ -69,6 +70,7 @@
6970
buildConfiguration = "Debug"
7071
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
7172
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
73+
language = ""
7274
launchStyle = "0"
7375
useCustomWorkingDirectory = "NO"
7476
ignoresPersistentStateOnLaunch = "NO"

GLTableCollectionView/Assets.xcassets/AppIcon.appiconset/Contents.json

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -97,6 +97,12 @@
9797
"idiom" : "ipad",
9898
"filename" : "Icon-iPadPro@2x.png",
9999
"scale" : "2x"
100+
},
101+
{
102+
"size" : "1024x1024",
103+
"idiom" : "ios-marketing",
104+
"filename" : "Icon-AppStore.png",
105+
"scale" : "1x"
100106
}
101107
],
102108
"info" : {
564 KB
Loading

GLTableCollectionView/Base.lproj/LaunchScreen.storyboard

Lines changed: 6 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,26 +1,24 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="12118" systemVersion="16D32" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="Ik1-Jh-kcr">
2+
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" launchScreen="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="Ik1-Jh-kcr">
33
<device id="retina4_7" orientation="portrait">
44
<adaptation id="fullscreen"/>
55
</device>
66
<dependencies>
77
<deployment identifier="iOS"/>
8-
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12086"/>
8+
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
9+
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
910
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
1011
</dependencies>
1112
<scenes>
1213
<!--View Controller-->
1314
<scene sceneID="EHf-IW-A2E">
1415
<objects>
1516
<viewController id="01J-lp-oVM" sceneMemberID="viewController">
16-
<layoutGuides>
17-
<viewControllerLayoutGuide type="top" id="Llm-lL-Icb"/>
18-
<viewControllerLayoutGuide type="bottom" id="xb3-aO-Qok"/>
19-
</layoutGuides>
2017
<view key="view" contentMode="scaleToFill" id="Ze5-6b-2t3">
2118
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
2219
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
2320
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
21+
<viewLayoutGuide key="safeArea" id="tHx-NU-s7G"/>
2422
</view>
2523
<navigationItem key="navigationItem" id="Egc-yq-19H"/>
2624
</viewController>
@@ -33,8 +31,9 @@
3331
<objects>
3432
<navigationController storyboardIdentifier="navigationController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="Ik1-Jh-kcr" sceneMemberID="viewController">
3533
<navigationBar key="navigationBar" contentMode="scaleToFill" id="wWJ-S6-skK">
36-
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
34+
<rect key="frame" x="0.0" y="20" width="375" height="44"/>
3735
<autoresizingMask key="autoresizingMask"/>
36+
<viewLayoutGuide key="safeArea" id="bRy-ch-hHd"/>
3837
</navigationBar>
3938
<connections>
4039
<segue destination="01J-lp-oVM" kind="relationship" relationship="rootViewController" id="0nM-Sh-5lD"/>

GLTableCollectionView/Base.lproj/Main.storyboard

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,24 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="12118" systemVersion="16D32" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="ClH-cz-IEW">
2+
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="13196" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" useSafeAreas="YES" colorMatched="YES" initialViewController="ClH-cz-IEW">
33
<device id="retina4_7" orientation="portrait">
44
<adaptation id="fullscreen"/>
55
</device>
66
<dependencies>
77
<deployment identifier="iOS"/>
8-
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="12086"/>
8+
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="13173"/>
9+
<capability name="Safe area layout guides" minToolsVersion="9.0"/>
910
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
1011
</dependencies>
1112
<scenes>
1213
<!--Table Collection View Controller-->
1314
<scene sceneID="MYD-pX-siV">
1415
<objects>
1516
<tableViewController storyboardIdentifier="tableCollectionView" useStoryboardIdentifierAsRestorationIdentifier="YES" id="lzn-74-EiO" customClass="GLTableCollectionViewController" customModule="GLTableCollectionView" customModuleProvider="target" sceneMemberID="viewController">
16-
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" showsVerticalScrollIndicator="NO" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="88" sectionHeaderHeight="28" sectionFooterHeight="1" id="l3B-sn-hQc">
17+
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" directionalLockEnabled="YES" alwaysBounceVertical="YES" showsHorizontalScrollIndicator="NO" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="88" sectionHeaderHeight="28" sectionFooterHeight="1" id="l3B-sn-hQc">
1718
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
1819
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
1920
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
21+
<viewLayoutGuide key="safeArea" id="9zB-mk-AEp"/>
2022
<sections/>
2123
<connections>
2224
<outlet property="dataSource" destination="lzn-74-EiO" id="560-Iz-sbo"/>
@@ -34,8 +36,9 @@
3436
<objects>
3537
<navigationController storyboardIdentifier="navigationController" useStoryboardIdentifierAsRestorationIdentifier="YES" id="ClH-cz-IEW" sceneMemberID="viewController">
3638
<navigationBar key="navigationBar" contentMode="scaleToFill" id="fmK-uj-jX1">
37-
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
39+
<rect key="frame" x="0.0" y="20" width="375" height="44"/>
3840
<autoresizingMask key="autoresizingMask"/>
41+
<viewLayoutGuide key="safeArea" id="d4y-hh-Xxj"/>
3942
</navigationBar>
4043
<connections>
4144
<segue destination="lzn-74-EiO" kind="relationship" relationship="rootViewController" id="7rc-7g-dv9"/>

README.md

Lines changed: 8 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,16 +6,16 @@
66

77
|**Branch**|**Status**|
88
|:--------:|:--------:|
9-
|master|[![BuddyBuild](https://dashboard.buddybuild.com/api/statusImage?appID=592889ed482e8d00016f99eb&branch=master&build=latest)](https://dashboard.buddybuild.com/apps/592889ed482e8d00016f99eb/build/latest?branch=master)|
10-
|develop|[![BuddyBuild](https://dashboard.buddybuild.com/api/statusImage?appID=592889ed482e8d00016f99eb&branch=develop&build=latest)](https://dashboard.buddybuild.com/apps/592889ed482e8d00016f99eb/build/latest?branch=develop)|
9+
|`master`|[![BuddyBuild](https://dashboard.buddybuild.com/api/statusImage?appID=592889ed482e8d00016f99eb&branch=master&build=latest)](https://dashboard.buddybuild.com/apps/592889ed482e8d00016f99eb/build/latest?branch=master)|
10+
|`develop`|[![BuddyBuild](https://dashboard.buddybuild.com/api/statusImage?appID=592889ed482e8d00016f99eb&branch=develop&build=latest)](https://dashboard.buddybuild.com/apps/592889ed482e8d00016f99eb/build/latest?branch=develop)|
1111

12-
![Language](https://img.shields.io/badge/language-Swift%203.x-orange.svg)
12+
![Language](https://img.shields.io/badge/language-Swift%204.x-orange.svg)
1313
![Supported platforms](https://img.shields.io/badge/platform-iOS-lightgrey.svg)
1414
[![codebeat badge](https://codebeat.co/badges/5a29ccd4-fda0-45d1-ae57-e7158e01449a)](https://codebeat.co/projects/github-com-giulio92-gltablecollectionview)
1515
[![license](https://img.shields.io/github/license/giulio92/GLTableCollectionView.svg)](https://github.com/giulio92/GLTableCollectionView/blob/master/LICENSE.txt)
1616

1717
## What it is
18-
GLTableCollectionView is a ready to use `UITableViewController` with a `UICollectionView` for each `UITableViewCell`, something like Netflix, Airbnb or the Apple's App Store are doing in their iOS apps. GLTableCollectionView is completely customizable in both his UITableView and UICollectionView parts since it has been made on the same Data Source and Delegate methods with no complicated additions.
18+
GLTableCollectionView is a ready to use `UITableViewController` with a `UICollectionView` for each `UITableViewCell`, something like Netflix, Airbnb or the Apple's App Store are doing in their iOS apps. GLTableCollectionView is completely customizable in both his `UITableView` and `UICollectionView` parts since it has been made on the same Data Source and Delegate methods with no complicated additions.
1919

2020
| | GLTableCollectionView |
2121
|----------|-------------------------------|
@@ -47,10 +47,7 @@ var paginationEnabled: Bool = true
4747
</p>
4848

4949
## Requirements
50-
- Xcode 8.0+
51-
- Swift 3.0+
52-
- iOS 8.0+
53-
- [SwiftLint](https://github.com/realm/SwiftLint) (Optional, but _highly_ suggested)
54-
55-
## Note
56-
GLTableCollectionView is written using Swift 3.0 so it would only support iOS 8.0+ due to Swift 3 language compatibility, if you use Swift 2.0 in your project or you need iOS 7.0+ compatibility GLTableCollectionView will work too, but you **must** convert `UITableView` and `UICollectionView` Data Source and Delegate methods signatures before building your code or Xcode won't compile.
50+
- Xcode 9.0+
51+
- Swift 4.0+
52+
- iOS 9.0+
53+
- [SwiftLint](https://github.com/realm/SwiftLint) (Optional, but _highly_ suggested)

0 commit comments

Comments
 (0)