FlexibleTableViewController
  • October 6, 2023

Swift library of generic table view controller with external data processing of functionality, like determine cell’s reuseIdentifier related to indexPath, configuration of requested cell for display and cell selection handler etc

Example


Initialization and cell registering.

let flexibleTableVC = FlexibleTableViewController<CustomCellData, OrderedListGenerator<CustomCellData>>(style: .plain, configuration: TableConfiguation())
flexibleTableVC.register(CustomUITableViewCell.self, forCellReuseIdentifier: CustomUITableViewCell.reuseIdentifier)

Define “reuse identifier” relatively to indexPath:

flexibleTableVC.requestCellIdentifier = { indexPath in
return CustomUITableViewCell.reuseIdentifier
}

Configure cell relatively to data:

flexibleTableVC.configureCell = { (cell: UITableViewCell, data: CustomCellData?) in
guard let data = data else { return false }

if let detailedData = data as? DetailedCustomCellData {
cell.textLabel?.text = detailedData.title
cell.detailTextLabel?.text = detailedData.detailed
}

cell.backgroundColor = data.backgroundColor

return true
}

Process cell select here:

flexibleTableVC.cellDidSelect = { indexPath in
// return true for immediately deselection
return true
}

Requirements


Updated to Swift 4

For Swift 3.1 version use v.2.0.6
For Swift 2.2 version use v.1.1.0

Installation


FlexibleTableViewController is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod “FlexibleTableViewController”

GitHub


View Github

#flexible #library #swift #swift4 #tableview
YOU MIGHT ALSO LIKE...
SwiftSpeech

Recognize your user's voice elegantly without having to figure out authorization and audio engines. SwiftSpeech Examples Features Installation Getting Started ...

SwiftUIValueSlider

Example To run the example project, clone the repo, and run pod install from the Example directory first. Requirements iOS 14.0 Installation ...

Sliders

Sliders is a compilation of all my stylable drag based SwiftUI components. It provides a variety of unique controls as well ...

SlidingRuler

SlidingRuler is a Swift package containing a SwiftUI control that acts like an linear infinite slider or a finite, more precise ...

Skeletonui

SkeletonUI aims to bring an elegant, declarative syntax to skeleton loading animations. Get rid of loading screens or spinners and ...