RxASDataSources
RxDataSources for AsyncDisplayKit/Texture: ASTableNode & ASCollectionNode.
Features
- O(N) Diff algorithm from RxDataSources/Differentiator
- Shared RxDataSources's APIs so you must learn only once.
- Supports
ASTableNode
andASCollectionNode
- Support
nodeBlock
- More complex Example app
Requirements
- iOS 9.0+
- Xcode 10.1+
- RxSwift 5.0 & Texture 2.8
Installation
CocoaPods
To integrate RxASDataSources into your Xcode project using CocoaPods, specify it in your Podfile
:
pod 'RxASDataSources'
Then, run the following command:
$ pod install
Carthage
To integrate RxASDataSources into your Xcode project using Carthage, specify it in your Cartfile
:
github "RxSwiftCommunity/RxASDataSources"
Usage
Working with RxASDataSources will be very simple if you are familiar with RxDataSources:
typealias Section = SectionModel<String, Int>
let configureCell: ASTableSectionedDataSource<Section>.ConfigureCell = { (dataSource, tableNode, index, model) in
let cell = ASTextCellNode()
cell.text = model.info
return cell
}
let animation = RowAnimation(insertAnimation: .automatic, reloadAnimation: .fade, deleteAnimation: .automatic)
let dataSource = RxASTableSectionedReloadDataSource<Section>(animationConfiguration: animation, configureCell: configureCell)
items
.bind(to: tableNode.rx.items(dataSource: dataSource))
.disposed(by: disposeBag)
For more advance usages, please follow RxDataSources and Example then simply replace your Views -> Nodes.
License
RxASDataSources is released under the MIT license. See LICENSE for details.