Add all example view controllers

Seto Elkahfi committed Apr 8, 2017 at 20:24 UTC 2fd6b29f0a6dfc046a076db50eaff0c866032296
2 files changed +118 -4
Example/JomloTableView/Base.lproj/Main.storyboard
+99 -3
@@ -24,11 +24,32 @@
24 <connections>
25 <outlet property="jomloTableView" destination="O58-cx-lFa" id="EEN-ES-c87"/>
26 <segue destination="g32-7R-g4E" kind="show" identifier="showLoadMoreExample" id="yzC-EM-5kg"/>
27 + <segue destination="2ow-KJ-V6C" kind="show" identifier="showSimpleTableViewExample" id="hbf-ba-Awg"/>
28 + <segue destination="Fz1-YY-UCM" kind="show" identifier="showDynamicHeightExample" id="pSv-Fd-mMd"/>
29 + <segue destination="upc-79-Edd" kind="show" identifier="showWebViewExample" id="qIh-hH-BZy"/>
30 + <segue destination="Xja-tS-nsM" kind="show" identifier="showImageListExample" id="p6h-kF-bIw"/>
31 + <segue destination="LdN-QN-clK" kind="show" identifier="showLongLayoutExample" id="Oav-T4-iT0"/>
32 + <segue destination="GYR-Bp-ZOg" kind="show" identifier="showStackViewRowExample" id="tdF-6I-znC"/>
33 </connections>
34 </viewController>
35 <placeholder placeholderIdentifier="IBFirstResponder" id="x5A-6p-PRh" sceneMemberID="firstResponder"/>
36 </objects>
31 - <point key="canvasLocation" x="1056.8" y="122.78860569715144"/>
37 + <point key="canvasLocation" x="532" y="191"/>
38 + </scene>
39 + <!--SimpleTableView-->
40 + <scene sceneID="ZkZ-li-643">
41 + <objects>
42 + <viewController id="2ow-KJ-V6C" sceneMemberID="viewController">
43 + <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="ewI-eZ-BEt" customClass="JomloTableView" customModule="JomloTableView">
44 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
45 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
46 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
47 + </tableView>
48 + <navigationItem key="navigationItem" title="SimpleTableView" id="wl8-gL-Vnq"/>
49 + </viewController>
50 + <placeholder placeholderIdentifier="IBFirstResponder" id="G8B-Nb-fl6" userLabel="First Responder" sceneMemberID="firstResponder"/>
51 + </objects>
52 + <point key="canvasLocation" x="3273" y="-479"/>
53 </scene>
54 <!--Load More Example-->
55 <scene sceneID="xtz-2B-VF9">
@@ -48,7 +69,7 @@
69 </viewController>
70 <placeholder placeholderIdentifier="IBFirstResponder" id="DKX-6f-sJi" userLabel="First Responder" sceneMemberID="firstResponder"/>
71 </objects>
51 - <point key="canvasLocation" x="1920.8" y="13.943028485757123"/>
72 + <point key="canvasLocation" x="1585" y="-479"/>
73 </scene>
74 <!--Navigation Controller-->
75 <scene sceneID="Uo3-bN-yZx">
@@ -66,7 +87,82 @@
87 </navigationController>
88 <placeholder placeholderIdentifier="IBFirstResponder" id="9pm-MH-7gV" userLabel="First Responder" sceneMemberID="firstResponder"/>
89 </objects>
69 - <point key="canvasLocation" x="-175" y="161"/>
90 + <point key="canvasLocation" x="-247" y="191"/>
91 + </scene>
92 + <!--DynamicHeight-->
93 + <scene sceneID="Za0-cZ-LpC">
94 + <objects>
95 + <viewController id="Fz1-YY-UCM" sceneMemberID="viewController">
96 + <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="Vjj-gb-tMm" customClass="JomloTableView" customModule="JomloTableView">
97 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
98 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
99 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
100 + </tableView>
101 + <navigationItem key="navigationItem" title="DynamicHeight" id="Idi-0n-Njj"/>
102 + </viewController>
103 + <placeholder placeholderIdentifier="IBFirstResponder" id="byX-x2-mBs" userLabel="First Responder" sceneMemberID="firstResponder"/>
104 + </objects>
105 + <point key="canvasLocation" x="1585" y="190"/>
106 + </scene>
107 + <!--WebView-->
108 + <scene sceneID="LW7-t6-8X9">
109 + <objects>
110 + <viewController id="upc-79-Edd" sceneMemberID="viewController">
111 + <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="oKc-pK-X9f" customClass="JomloTableView" customModule="JomloTableView">
112 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
113 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
114 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
115 + </tableView>
116 + <navigationItem key="navigationItem" title="WebView" id="hr9-3A-2oK"/>
117 + </viewController>
118 + <placeholder placeholderIdentifier="IBFirstResponder" id="iC0-0e-NwY" userLabel="First Responder" sceneMemberID="firstResponder"/>
119 + </objects>
120 + <point key="canvasLocation" x="3273" y="191"/>
121 + </scene>
122 + <!--ImageList-->
123 + <scene sceneID="w7T-P8-zNy">
124 + <objects>
125 + <viewController id="Xja-tS-nsM" sceneMemberID="viewController">
126 + <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="By5-T3-kYI" customClass="JomloTableView" customModule="JomloTableView">
127 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
128 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
129 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
130 + </tableView>
131 + <navigationItem key="navigationItem" title="ImageList" id="xiW-hM-Pzc"/>
132 + </viewController>
133 + <placeholder placeholderIdentifier="IBFirstResponder" id="GBN-V1-eEi" userLabel="First Responder" sceneMemberID="firstResponder"/>
134 + </objects>
135 + <point key="canvasLocation" x="1585" y="883"/>
136 + </scene>
137 + <!--LongLayout-->
138 + <scene sceneID="Nmb-Sj-2nQ">
139 + <objects>
140 + <viewController id="LdN-QN-clK" sceneMemberID="viewController">
141 + <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="3RS-Kc-wVk" customClass="JomloTableView" customModule="JomloTableView">
142 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
143 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
144 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
145 + </tableView>
146 + <navigationItem key="navigationItem" title="LongLayout" id="aCO-5w-cXQ"/>
147 + </viewController>
148 + <placeholder placeholderIdentifier="IBFirstResponder" id="9v9-Eq-TCO" userLabel="First Responder" sceneMemberID="firstResponder"/>
149 + </objects>
150 + <point key="canvasLocation" x="3273" y="883"/>
151 + </scene>
152 + <!--StackViewRow-->
153 + <scene sceneID="crb-16-Hw1">
154 + <objects>
155 + <viewController id="GYR-Bp-ZOg" sceneMemberID="viewController">
156 + <tableView key="view" clipsSubviews="YES" contentMode="scaleToFill" alwaysBounceVertical="YES" dataMode="prototypes" style="plain" separatorStyle="default" rowHeight="44" sectionHeaderHeight="28" sectionFooterHeight="28" id="BwG-Mq-gDJ" customClass="JomloTableView" customModule="JomloTableView">
157 + <rect key="frame" x="0.0" y="0.0" width="375" height="667"/>
158 + <autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
159 + <color key="backgroundColor" white="1" alpha="1" colorSpace="calibratedWhite"/>
160 + </tableView>
161 + <navigationItem key="navigationItem" title="StackViewRow" id="MLP-23-8DZ"/>
162 + </viewController>
163 + <placeholder placeholderIdentifier="IBFirstResponder" id="vFz-1q-k3v" userLabel="First Responder" sceneMemberID="firstResponder"/>
164 + </objects>
165 + <point key="canvasLocation" x="1585" y="1597"/>
166 </scene>
167 </scenes>
168 </document>
Example/JomloTableView/ViewController.swift
+19 -1
@@ -19,6 +19,9 @@ class ViewController: UIViewController {
19 super.viewDidLoad()
20
21 let row0 = SimpleRow("Simple table view", subTitle: "A simple table view like we usually use. But this time, we use JomloTableView.")
22 + row0.setOnRowClicked { (row) in
23 + self.performSegue(withIdentifier: "showSimpleTableViewExample", sender: self)
24 + }
25 exampleSection.addRow(row: row0)
26
27 let row1 = SimpleRow("Load more", subTitle: "A JomloTableView with load more row at the bottom. Will load infinite row if we scroll the table view to the bottom.")
@@ -28,18 +31,33 @@ class ViewController: UIViewController {
31 exampleSection.addRow(row: row1)
32
33 let row2 = SimpleRow("Dynamic height", subTitle: "Example how to use dynamic height for single row. In fact, this example rows is also use dynamic height.")
34 + row2.setOnRowClicked { (row) in
35 + self.performSegue(withIdentifier: "showDynamicHeightExample", sender: self)
36 + }
37 exampleSection.addRow(row: row2)
38
39 let row3 = SimpleRow("WebView", subTitle: "A JomloTableView with WebView inside of its row.")
40 + row3.setOnRowClicked { (row) in
41 + self.performSegue(withIdentifier: "showWebViewExample", sender: self)
42 + }
43 exampleSection.addRow(row: row3)
44
45 let row4 = SimpleRow("Image list", subTitle: "A JomloTableView with image views inside of its row.")
46 + row4.setOnRowClicked { (row) in
47 + self.performSegue(withIdentifier: "showImageListExample", sender: self)
48 + }
49 exampleSection.addRow(row: row4)
50
39 - let row5 = SimpleRow("Long scrollable layout", subTitle: "A JomloTableView which doesn't look like a table view. ")
51 + let row5 = SimpleRow("Long layout", subTitle: "A JomloTableView which doesn't look like a table view.")
52 + row5.setOnRowClicked { (row) in
53 + self.performSegue(withIdentifier: "showLongLayoutExample", sender: self)
54 + }
55 exampleSection.addRow(row: row5)
56
57 let row6 = SimpleRow("StackView row", subTitle: "A JomloTableView with UIStackView inside of its rows. Here we use UITableViewAutomaticDimension for row's height property.")
58 + row6.setOnRowClicked { (row) in
59 + self.performSegue(withIdentifier: "showStackViewRowExample", sender: self)
60 + }
61 exampleSection.addRow(row: row6)
62
63 jomloTableView.addSection(section: exampleSection)