Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dimpiax/FlexibleTableViewController
Generic table view controller with external data processing
https://github.com/dimpiax/FlexibleTableViewController
flexible library swift swift4 tableview
Last synced: about 1 month ago
JSON representation
Generic table view controller with external data processing
- Host: GitHub
- URL: https://github.com/dimpiax/FlexibleTableViewController
- Owner: dimpiax
- License: mit
- Created: 2015-03-26T14:52:30.000Z (almost 10 years ago)
- Default Branch: master
- Last Pushed: 2018-01-08T23:24:29.000Z (about 7 years ago)
- Last Synced: 2024-11-26T12:35:25.953Z (about 2 months ago)
- Topics: flexible, library, swift, swift4, tableview
- Language: Swift
- Homepage:
- Size: 116 KB
- Stars: 9
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-ios - FlexibleTableViewController - 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 (UI / Table View / Collection View)
- awesome-ios-star - FlexibleTableViewController - 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 (UI / Table View / Collection View)
README
# FlexibleTableViewController
[![Language](https://img.shields.io/badge/swift-4.0-fec42e.svg)](https://swift.org/blog/swift-4-0-released/)
[![Version](https://img.shields.io/cocoapods/v/FlexibleTableViewController.svg?style=flat)](http://cocoapods.org/pods/FlexibleTableViewController)
[![License](https://img.shields.io/cocoapods/l/FlexibleTableViewController.svg?style=flat)](http://cocoapods.org/pods/FlexibleTableViewController)
[![Platform](https://img.shields.io/cocoapods/p/FlexibleTableViewController.svg?style=flat)](http://cocoapods.org/pods/FlexibleTableViewController)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.
```swift
let flexibleTableVC = FlexibleTableViewController>(style: .plain, configuration: TableConfiguation())
flexibleTableVC.register(CustomUITableViewCell.self, forCellReuseIdentifier: CustomUITableViewCell.reuseIdentifier)
```Define "reuse identifier" relatively to indexPath:
```swift
flexibleTableVC.requestCellIdentifier = { indexPath in
return CustomUITableViewCell.reuseIdentifier
}
```Configure cell relatively to data:
```swift
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:
```swift
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](../../releases/tag/2.0.6)
###### For Swift 2.2 version use [v.1.1.0](../../releases/tag/1.1.0)## Installation
FlexibleTableViewController is available through [CocoaPods](http://cocoapods.org). To install
it, simply add the following line to your Podfile:```ruby
pod "FlexibleTableViewController"
```## Author
Pilipenko Dima, [email protected]
##### Also article on Medium: https://medium.com/@dimpiax/swift-flexibletableviewcontroller-dbd17087e0b9
## License
FlexibleTableViewController is available under the MIT license. See the LICENSE file for more info.