3pods
This CocoaPod simplify your implementation of table-view forms. it provides the ability to validate your input.
License: MIT
``` class ViewController: PaginateViewController { @IBOutlet weak var noElementLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
tableView.dataSource = self
refreshElements()
}
override var getElementsClosure: (page: Int, successHandler: GetElementsSuccessHandler, failureHandler: (error: Error) -> Void) -> Void {
return getElementList
}
func getElementList(page: Int, successHandler: GetElementsSuccessHandler, failureHandler: (error: Error) -> Void) {
let elements = (0...20).map { "page (page), element index" + String($0) }
delay(2) {
successHandler(elements: elements, hasMoreElements: true)
}
}
override func displayNoElementIfNeeded(noElement: Bool) {
noElementLabel.hidden = !noElement
}
}
extension ViewController: UITableViewDataSource { func tableView(tableView: UITableView, numberOfRowsInSection section: Int) -> Int { return elements.count }
func tableView(tableView: UITableView, cellForRowAtIndexPath indexPath: NSIndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCellWithIdentifier("Cell")!
let element = getElement(String.self, at: indexPath.row)
cell.textLabel?.text = element
if elements.count == indexPath.row + 1 {
loadNextPage()
}
return cell
}
} ```
License: MIT