From ca851b6a9f71128027ab563b512fd753258cf9d9 Mon Sep 17 00:00:00 2001 From: Max Sokolov Date: Wed, 20 Jan 2016 19:47:47 +0300 Subject: [PATCH] estimatedRowHeight now is not optional --- Tablet/TableRowBuilder.swift | 4 ++-- .../TabletDemo.xcodeproj/project.pbxproj | 4 ++++ .../UserInterfaceState.xcuserstate | Bin 16237 -> 16543 bytes .../TabletDemo/TableDirectorExtensions.swift | 18 ++++++++++++++++++ TabletDemo/TabletDemo/ViewController.swift | 6 +++--- 5 files changed, 27 insertions(+), 5 deletions(-) create mode 100644 TabletDemo/TabletDemo/TableDirectorExtensions.swift diff --git a/Tablet/TableRowBuilder.swift b/Tablet/TableRowBuilder.swift index 8579f68..33b2439 100644 --- a/Tablet/TableRowBuilder.swift +++ b/Tablet/TableRowBuilder.swift @@ -56,14 +56,14 @@ public class TableRowBuilder : RowBuilder { } } - public init(item: I, id: String? = nil, estimatedRowHeight: CGFloat = UITableViewAutomaticDimension) { + public init(item: I, id: String? = nil, estimatedRowHeight: CGFloat) { reusableIdentifier = id ?? NSStringFromClass(C).componentsSeparatedByString(".").last ?? "" self.estimatedRowHeight = estimatedRowHeight items.append(item) } - public init(items: [I]? = nil, id: String? = nil, estimatedRowHeight: CGFloat = UITableViewAutomaticDimension) { + public init(items: [I]? = nil, id: String? = nil, estimatedRowHeight: CGFloat) { reusableIdentifier = id ?? NSStringFromClass(C).componentsSeparatedByString(".").last ?? "" self.estimatedRowHeight = estimatedRowHeight diff --git a/TabletDemo/TabletDemo.xcodeproj/project.pbxproj b/TabletDemo/TabletDemo.xcodeproj/project.pbxproj index c043d8b..5c0c483 100644 --- a/TabletDemo/TabletDemo.xcodeproj/project.pbxproj +++ b/TabletDemo/TabletDemo.xcodeproj/project.pbxproj @@ -7,6 +7,7 @@ objects = { /* Begin PBXBuildFile section */ + 504740931C4FEEC50012132B /* TableDirectorExtensions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 504740921C4FEEC50012132B /* TableDirectorExtensions.swift */; }; 508B71841BF48DD300272920 /* TableSectionBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 508B71831BF48DD300272920 /* TableSectionBuilder.swift */; }; 508B71861BF48E0D00272920 /* TableRowBuilder.swift in Sources */ = {isa = PBXBuildFile; fileRef = 508B71851BF48E0D00272920 /* TableRowBuilder.swift */; }; DA1BCD0F1BF5472C00CC0479 /* TableDirector.swift in Sources */ = {isa = PBXBuildFile; fileRef = DA1BCD0E1BF5472C00CC0479 /* TableDirector.swift */; }; @@ -24,6 +25,7 @@ /* End PBXBuildFile section */ /* Begin PBXFileReference section */ + 504740921C4FEEC50012132B /* TableDirectorExtensions.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TableDirectorExtensions.swift; sourceTree = ""; }; 508B71831BF48DD300272920 /* TableSectionBuilder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TableSectionBuilder.swift; sourceTree = ""; }; 508B71851BF48E0D00272920 /* TableRowBuilder.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TableRowBuilder.swift; sourceTree = ""; }; DA1BCD0E1BF5472C00CC0479 /* TableDirector.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = TableDirector.swift; sourceTree = ""; }; @@ -73,6 +75,7 @@ DAB7EB291BEF787300D2AD5E /* TabletDemo */ = { isa = PBXGroup; children = ( + 504740921C4FEEC50012132B /* TableDirectorExtensions.swift */, DAB7EB2A1BEF787300D2AD5E /* AppDelegate.swift */, DAB7EB2C1BEF787300D2AD5E /* ViewController.swift */, DAB7EB3F1BEFD07E00D2AD5E /* ConfigurableTableViewCell.swift */, @@ -178,6 +181,7 @@ DAED08F11C14DE7E006C04D8 /* MyTableViewCell.swift in Sources */, DAF003961C14DC0C0028C3D6 /* MyNibTableViewCell.swift in Sources */, 508B71861BF48E0D00272920 /* TableRowBuilder.swift in Sources */, + 504740931C4FEEC50012132B /* TableDirectorExtensions.swift in Sources */, DA1BCD0F1BF5472C00CC0479 /* TableDirector.swift in Sources */, DAB7EB401BEFD07E00D2AD5E /* ConfigurableTableViewCell.swift in Sources */, DAB7EB2B1BEF787300D2AD5E /* AppDelegate.swift in Sources */, diff --git a/TabletDemo/TabletDemo.xcodeproj/project.xcworkspace/xcuserdata/max.xcuserdatad/UserInterfaceState.xcuserstate b/TabletDemo/TabletDemo.xcodeproj/project.xcworkspace/xcuserdata/max.xcuserdatad/UserInterfaceState.xcuserstate index b479369a341d4c40f02a0500c312b5d0f9324612..f1039ba28a0173f795d6ad6540abefa6ebbd2ed2 100644 GIT binary patch delta 7168 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: [1, 2, 3, 4], id: "cell") + let rowBuilder = TableRowBuilder(items: [1, 2, 3, 4], id: "cell", estimatedRowHeight: 44) .action(.configure) { data in data.cell?.textLabel?.text = "\(data.item)" @@ -54,12 +54,12 @@ class ViewController: UIViewController { data.cell!.contentLabel.text = "Tablet is a super lightweight yet powerful generic library that handles a complexity of UITableView's datasource and delegate methods in a Swift environment. Tablet's goal is to provide an easiest way to create complex table views. With Tablet you don't have to write a messy code of switch or if statements when you deal with bunch of different cells in different sections." } - let myRowBuilder = TableRowBuilder(item: 0, id: "cellll") + let myRowBuilder = TableRowBuilder(item: 0, id: "cellll", estimatedRowHeight: 44) let sectionBuilder = TableSectionBuilder(headerTitle: "Tablet", footerTitle: "Deal with table view like a boss.", rowBuilders: [rowBuilder, configurableRowBuilder, myRowBuilder]) tableDirector += sectionBuilder - sectionBuilder.appendRowBuilder(TableRowBuilder(item: 0)) + sectionBuilder.appendRowBuilder(TableRowBuilder(item: 0, estimatedRowHeight: 44)) } } \ No newline at end of file