Skip to content

Commit bd9b283

Browse files
committed
Adds an example with sections
1 parent 5039e2b commit bd9b283

File tree

5 files changed

+307
-92
lines changed

5 files changed

+307
-92
lines changed

Examples/TableViewExample/TableViewExample.xcodeproj/project.pbxproj

+8-4
Original file line numberDiff line numberDiff line change
@@ -9,11 +9,12 @@
99
/* Begin PBXBuildFile section */
1010
900E03AA1DE7DE6E0033A799 /* Diff.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C9278AD01DE323F6009CE846 /* Diff.framework */; };
1111
C9278AB61DE31362009CE846 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9278AB51DE31362009CE846 /* AppDelegate.swift */; };
12-
C9278AB81DE31362009CE846 /* MasterViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9278AB71DE31362009CE846 /* MasterViewController.swift */; };
12+
C9278AB81DE31362009CE846 /* TableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C9278AB71DE31362009CE846 /* TableViewController.swift */; };
1313
C9278ABD1DE31362009CE846 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = C9278ABB1DE31362009CE846 /* Main.storyboard */; };
1414
C9278ABF1DE31362009CE846 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = C9278ABE1DE31362009CE846 /* Assets.xcassets */; };
1515
C9278AC21DE31362009CE846 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = C9278AC01DE31362009CE846 /* LaunchScreen.storyboard */; };
1616
C9278ADC1DE324D0009CE846 /* Diff.framework in CopyFiles */ = {isa = PBXBuildFile; fileRef = C9278AD01DE323F6009CE846 /* Diff.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; };
17+
C93448FF1E195C570035E956 /* NestedTableViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C93448FE1E195C570035E956 /* NestedTableViewController.swift */; };
1718
/* End PBXBuildFile section */
1819

1920
/* Begin PBXContainerItemProxy section */
@@ -49,12 +50,13 @@
4950
/* Begin PBXFileReference section */
5051
C9278AB21DE31362009CE846 /* TableViewExample.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = TableViewExample.app; sourceTree = BUILT_PRODUCTS_DIR; };
5152
C9278AB51DE31362009CE846 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = "<group>"; };
52-
C9278AB71DE31362009CE846 /* MasterViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MasterViewController.swift; sourceTree = "<group>"; };
53+
C9278AB71DE31362009CE846 /* TableViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TableViewController.swift; sourceTree = "<group>"; };
5354
C9278ABC1DE31362009CE846 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = "<group>"; };
5455
C9278ABE1DE31362009CE846 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = "<group>"; };
5556
C9278AC11DE31362009CE846 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = "<group>"; };
5657
C9278AC31DE31362009CE846 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = "<group>"; };
5758
C9278AC91DE323F6009CE846 /* Diff.xcodeproj */ = {isa = PBXFileReference; lastKnownFileType = "wrapper.pb-project"; name = Diff.xcodeproj; path = ../../Diff.xcodeproj; sourceTree = "<group>"; };
59+
C93448FE1E195C570035E956 /* NestedTableViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NestedTableViewController.swift; sourceTree = "<group>"; };
5860
/* End PBXFileReference section */
5961

6062
/* Begin PBXFrameworksBuildPhase section */
@@ -90,7 +92,8 @@
9092
isa = PBXGroup;
9193
children = (
9294
C9278AB51DE31362009CE846 /* AppDelegate.swift */,
93-
C9278AB71DE31362009CE846 /* MasterViewController.swift */,
95+
C9278AB71DE31362009CE846 /* TableViewController.swift */,
96+
C93448FE1E195C570035E956 /* NestedTableViewController.swift */,
9497
C9278ABB1DE31362009CE846 /* Main.storyboard */,
9598
C9278ABE1DE31362009CE846 /* Assets.xcassets */,
9699
C9278AC01DE31362009CE846 /* LaunchScreen.storyboard */,
@@ -205,7 +208,8 @@
205208
isa = PBXSourcesBuildPhase;
206209
buildActionMask = 2147483647;
207210
files = (
208-
C9278AB81DE31362009CE846 /* MasterViewController.swift in Sources */,
211+
C93448FF1E195C570035E956 /* NestedTableViewController.swift in Sources */,
212+
C9278AB81DE31362009CE846 /* TableViewController.swift in Sources */,
209213
C9278AB61DE31362009CE846 /* AppDelegate.swift in Sources */,
210214
);
211215
runOnlyForDeploymentPostprocessing = 0;

Examples/TableViewExample/TableViewExample/Base.lproj/Main.storyboard

+113-8
Original file line numberDiff line numberDiff line change
@@ -1,29 +1,32 @@
11
<?xml version="1.0" encoding="UTF-8"?>
2-
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11201" systemVersion="16B2555" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="qQA-Ix-eTh">
2+
<document type="com.apple.InterfaceBuilder3.CocoaTouch.Storyboard.XIB" version="3.0" toolsVersion="11542" systemVersion="16B2555" targetRuntime="iOS.CocoaTouch" propertyAccessControl="none" useAutolayout="YES" useTraitCollections="YES" colorMatched="YES" initialViewController="qQA-Ix-eTh">
3+
<device id="retina4_7" orientation="portrait">
4+
<adaptation id="fullscreen"/>
5+
</device>
36
<dependencies>
47
<deployment identifier="iOS"/>
5-
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11161"/>
8+
<plugIn identifier="com.apple.InterfaceBuilder.IBCocoaTouchPlugin" version="11524"/>
69
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
710
</dependencies>
811
<scenes>
912
<!--Example-->
1013
<scene sceneID="smW-Zh-WAh">
1114
<objects>
12-
<tableViewController title="Example" clearsSelectionOnViewWillAppear="NO" id="7bK-jq-Zjz" customClass="MasterViewController" customModule="TableViewExample" customModuleProvider="target" sceneMemberID="viewController">
15+
<tableViewController title="Example" clearsSelectionOnViewWillAppear="NO" id="7bK-jq-Zjz" customClass="TableViewController" customModule="TableViewExample" customModuleProvider="target" sceneMemberID="viewController">
1316
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="22" sectionFooterHeight="22" id="r7i-6Z-zg0">
1417
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
1518
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
1619
<color key="backgroundColor" red="1" green="1" blue="1" alpha="1" colorSpace="custom" customColorSpace="sRGB"/>
1720
<prototypes>
1821
<tableViewCell contentMode="scaleToFill" selectionStyle="blue" hidesAccessoryWhenEditing="NO" indentationLevel="1" indentationWidth="0.0" reuseIdentifier="Cell" textLabel="Arm-wq-HPj" style="IBUITableViewCellStyleDefault" id="WCw-Qf-5nD">
19-
<rect key="frame" x="0.0" y="86" width="375" height="44"/>
22+
<rect key="frame" x="0.0" y="22" width="375" height="44"/>
2023
<autoresizingMask key="autoresizingMask"/>
2124
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="WCw-Qf-5nD" id="37f-cq-3Eg">
22-
<frame key="frameInset" width="375" height="43.5"/>
25+
<rect key="frame" x="0.0" y="0.0" width="375" height="43"/>
2326
<autoresizingMask key="autoresizingMask"/>
2427
<subviews>
2528
<label opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" text="Title" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="Arm-wq-HPj">
26-
<frame key="frameInset" minX="15" width="345" height="43.5"/>
29+
<rect key="frame" x="15" y="0.0" width="345" height="43"/>
2730
<autoresizingMask key="autoresizingMask"/>
2831
<fontDescription key="fontDescription" type="boldSystem" pointSize="20"/>
2932
<color key="textColor" cocoaTouchSystemColor="darkTextColor"/>
@@ -44,7 +47,7 @@
4447
</tableViewController>
4548
<placeholder placeholderIdentifier="IBFirstResponder" id="Rux-fX-hf1" sceneMemberID="firstResponder"/>
4649
</objects>
47-
<point key="canvasLocation" x="-102" y="-589"/>
50+
<point key="canvasLocation" x="956" y="-599"/>
4851
</scene>
4952
<!--Navigation Controller-->
5053
<scene sceneID="Zr0-q4-JNj">
@@ -55,12 +58,114 @@
5558
<autoresizingMask key="autoresizingMask"/>
5659
</navigationBar>
5760
<connections>
58-
<segue destination="7bK-jq-Zjz" kind="relationship" relationship="rootViewController" id="x86-Bs-SYG"/>
61+
<segue destination="Sk2-ZM-0ZI" kind="relationship" relationship="rootViewController" id="SjJ-19-atS"/>
5962
</connections>
6063
</navigationController>
6164
<placeholder placeholderIdentifier="IBFirstResponder" id="870-9h-bdG" userLabel="First Responder" sceneMemberID="firstResponder"/>
6265
</objects>
6366
<point key="canvasLocation" x="-953" y="-77"/>
6467
</scene>
68+
<!--Table View Controller-->
69+
<scene sceneID="ku5-dP-icC">
70+
<objects>
71+
<tableViewController id="Sk2-ZM-0ZI" sceneMemberID="viewController">
72+
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="static" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="cKz-Vh-BI9">
73+
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
74+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
75+
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
76+
<sections>
77+
<tableViewSection id="yTm-oK-A0b">
78+
<cells>
79+
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" textLabel="9K8-MT-ebf" style="IBUITableViewCellStyleDefault" id="Dx2-9P-2Mw">
80+
<rect key="frame" x="0.0" y="0.0" width="375" height="44"/>
81+
<autoresizingMask key="autoresizingMask"/>
82+
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="Dx2-9P-2Mw" id="Pp1-Ou-SbY">
83+
<rect key="frame" x="0.0" y="0.0" width="375" height="43"/>
84+
<autoresizingMask key="autoresizingMask"/>
85+
<subviews>
86+
<label opaque="NO" multipleTouchEnabled="YES" contentMode="left" text="Simple" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="9K8-MT-ebf">
87+
<rect key="frame" x="15" y="0.0" width="345" height="43"/>
88+
<autoresizingMask key="autoresizingMask"/>
89+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
90+
<nil key="textColor"/>
91+
<nil key="highlightedColor"/>
92+
</label>
93+
</subviews>
94+
</tableViewCellContentView>
95+
<connections>
96+
<segue destination="7bK-jq-Zjz" kind="show" id="Pma-iy-rOF"/>
97+
</connections>
98+
</tableViewCell>
99+
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" textLabel="eTE-RT-1IP" style="IBUITableViewCellStyleDefault" id="q1C-pg-dmG">
100+
<rect key="frame" x="0.0" y="44" width="375" height="44"/>
101+
<autoresizingMask key="autoresizingMask"/>
102+
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="q1C-pg-dmG" id="DWK-Rf-Wkc">
103+
<rect key="frame" x="0.0" y="0.0" width="375" height="43"/>
104+
<autoresizingMask key="autoresizingMask"/>
105+
<subviews>
106+
<label opaque="NO" multipleTouchEnabled="YES" contentMode="left" text="Sections" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="eTE-RT-1IP">
107+
<rect key="frame" x="15" y="0.0" width="345" height="43"/>
108+
<autoresizingMask key="autoresizingMask"/>
109+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
110+
<nil key="textColor"/>
111+
<nil key="highlightedColor"/>
112+
</label>
113+
</subviews>
114+
</tableViewCellContentView>
115+
<connections>
116+
<segue destination="ZZF-Sl-uM9" kind="show" id="BdY-Ur-GD3"/>
117+
</connections>
118+
</tableViewCell>
119+
</cells>
120+
</tableViewSection>
121+
</sections>
122+
<connections>
123+
<outlet property="dataSource" destination="Sk2-ZM-0ZI" id="1Zi-8Z-b7b"/>
124+
<outlet property="delegate" destination="Sk2-ZM-0ZI" id="lwP-wn-mM1"/>
125+
</connections>
126+
</tableView>
127+
<navigationItem key="navigationItem" id="Jyj-Ve-jkn"/>
128+
</tableViewController>
129+
<placeholder placeholderIdentifier="IBFirstResponder" id="o49-M4-eiB" userLabel="First Responder" sceneMemberID="firstResponder"/>
130+
</objects>
131+
<point key="canvasLocation" x="102" y="-78"/>
132+
</scene>
133+
<!--Nested Table View Controller-->
134+
<scene sceneID="8LT-Fm-lfy">
135+
<objects>
136+
<tableViewController id="ZZF-Sl-uM9" customClass="NestedTableViewController" customModule="TableViewExample" customModuleProvider="target" sceneMemberID="viewController">
137+
<tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="iCp-m9-kGp">
138+
<rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
139+
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
140+
<color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
141+
<prototypes>
142+
<tableViewCell clipsSubviews="YES" contentMode="scaleToFill" selectionStyle="default" indentationWidth="10" reuseIdentifier="Cell" textLabel="pxZ-wo-WyL" style="IBUITableViewCellStyleDefault" id="pMr-7Z-It1">
143+
<rect key="frame" x="0.0" y="28" width="375" height="44"/>
144+
<autoresizingMask key="autoresizingMask"/>
145+
<tableViewCellContentView key="contentView" opaque="NO" clipsSubviews="YES" multipleTouchEnabled="YES" contentMode="center" tableViewCell="pMr-7Z-It1" id="OL7-zC-vTy">
146+
<rect key="frame" x="0.0" y="0.0" width="375" height="43"/>
147+
<autoresizingMask key="autoresizingMask"/>
148+
<subviews>
149+
<label opaque="NO" multipleTouchEnabled="YES" contentMode="left" text="Title" textAlignment="natural" lineBreakMode="tailTruncation" baselineAdjustment="alignBaselines" adjustsFontSizeToFit="NO" id="pxZ-wo-WyL">
150+
<rect key="frame" x="15" y="0.0" width="345" height="43"/>
151+
<autoresizingMask key="autoresizingMask"/>
152+
<fontDescription key="fontDescription" type="system" pointSize="17"/>
153+
<nil key="textColor"/>
154+
<nil key="highlightedColor"/>
155+
</label>
156+
</subviews>
157+
</tableViewCellContentView>
158+
</tableViewCell>
159+
</prototypes>
160+
<connections>
161+
<outlet property="dataSource" destination="ZZF-Sl-uM9" id="Ka0-6h-laQ"/>
162+
<outlet property="delegate" destination="ZZF-Sl-uM9" id="gZA-Nk-aJ2"/>
163+
</connections>
164+
</tableView>
165+
</tableViewController>
166+
<placeholder placeholderIdentifier="IBFirstResponder" id="Htd-hj-81c" userLabel="First Responder" sceneMemberID="firstResponder"/>
167+
</objects>
168+
<point key="canvasLocation" x="956" y="220"/>
169+
</scene>
65170
</scenes>
66171
</document>

0 commit comments

Comments
 (0)