Added support for table section index

This commit is contained in:
Pavel Gurov 2017-04-13 10:52:29 +03:00
parent 92b3e3b9a7
commit b49b01ff59
2 changed files with 17 additions and 3 deletions

View File

@ -31,7 +31,9 @@ open class TableDirector: NSObject, UITableViewDataSource, UITableViewDelegate {
private weak var scrollDelegate: UIScrollViewDelegate?
private var cellRegisterer: TableCellRegisterer?
public private(set) var rowHeightCalculator: RowHeightCalculator?
public var sectionIndexTitles: [String]?
public var onSectionForIndex: ((_ title: String, _ index: Int) -> Int)?
@available(*, deprecated, message: "Produced incorrect behaviour")
open var shouldUsePrototypeCellHeightCalculation: Bool = false {
didSet {
@ -192,6 +194,18 @@ open class TableDirector: NSObject, UITableViewDataSource, UITableViewDelegate {
return section.footerHeight ?? section.footerView?.frame.size.height ?? UITableViewAutomaticDimension
}
// MARK: UITableViewDataSource - Index
public func sectionIndexTitles(for tableView: UITableView) -> [String]? {
return sectionIndexTitles
}
public func tableView(_ tableView: UITableView, sectionForSectionIndexTitle title: String, at index: Int) -> Int {
guard let onSectionForIndex = onSectionForIndex else { return 0 }
return onSectionForIndex(title, index)
}
// MARK: UITableViewDelegate - actions
open func tableView(_ tableView: UITableView, didSelectRowAt indexPath: IndexPath) {

View File

@ -2,7 +2,7 @@ Pod::Spec.new do |s|
s.name = 'TableKit'
s.module_name = 'TableKit'
s.version = '2.3.1'
s.version = '2.4.0'
s.homepage = 'https://github.com/maxsokolov/TableKit'
s.summary = 'Type-safe declarative table views with Swift.'
@ -14,4 +14,4 @@ Pod::Spec.new do |s|
s.source_files = 'Sources/*.swift'
s.source = { :git => 'https://github.com/maxsokolov/TableKit.git', :tag => s.version }
end
end