SwiftDataTables allows you to display grid-like data sets in a nicely formatted table for iOS. The main goal for the end-user are to be able to obtain useful information from the table as quickly as possible with the following features: ordering, searching, and paging; where as for the developer is to allow for easy implementation with extensible options.
- iOS 8.0 - iOS 11+
- Xcode 9
- Swift 3
If you want to try it, simply run:
pod try SwiftDataTables
Or clone the repo and run
pod install from the Example directory first.
Then open the workspace file
SwiftDataTables.xcworkspace, and build & run the app.
If you have any questions or wish to make any suggestions, please open an issue with the appropriate label, and I'll get back to you right away. Thank you
To install it, simply add the following line to your Podfile:
pod install with CocoaPods 1.1.0.beta.1 or newer.
You can install Carthage with Homebrew using the following command:
$ brew update $ brew install carthage
To integrate SwiftDataTables into your Xcode project using Carthage, specify it in your
carthage update to build the framework and drag the built
SwiftDataTables.framework into your Xcode project.
- Create an issue and describe your idea
- [Fork it] (https://github.com/pavankataria/SwiftDataTables/fork)
- Create your feature branch (
git checkout -b my-new-feature)
- Commit your changes (
git commit -am 'Add some feature')
- Publish the branch (
git push origin my-new-feature)
- Create a new Pull Request
- Thank you! :white_check_mark:
Who is using it
Please let me know if your app is using this library. I'd be glad to put your app on the list :-)
- WeShop for iOS
WeShop - Make shopping on the go a joy with the WeShop App. Compare millions of products from 100s of top retailers and discover which have been recommended by people you trust. WeShop is the most rewarding place to shop; collect points every time you buy AND when you recommend products you love. Redeem them for cash, or donate them to charity - it pays to be social!
SwiftDataTables is available under the MIT license. See the LICENSE file for more info. This package was inspired by JQuery's DataTables plugin.
Help us keep the lights on
0.5.3 - Apr 6, 2017
Implements Data Source with bug fix.
0.5.0 - Apr 6, 2017
Data source, here we are!! Simply implement the DataTableDataSource protocol and then call the reload method on the data table, and all the views will be initialised for you 👍
0.4.0 - Mar 17, 2017
🔎 🔎 Implements a Search Bar for data filtering! 🔎 🔎
A search bar is automatically added to all data tables to allow the user to filter through the loaded data set without changing any code.
- Swift Data Tables will automatically add a search bar to the data grid.
- The search will find occurrences in every single data item, efficiently.
- A row will be returned in the filtering process if even one of it's data items contain the needle.
- The default filtering algorithm uses a contains matching expression.
0.3.1 - Mar 15, 2017
Trims project and min iOS deployment set to version 8.0
0.3.0 - Mar 13, 2017
- Improves the sorting algorithm for columns by scanning the data passed into the
SwiftDataTableclass and automatically infer the type of the data.
- Changes Cell Row Representable to use A new
DataTableValueTypethat moves away from the
- original initialiser has been moved to a convenience one. users can still inject [[String]] into the SwiftDataTable class:
- Adds a new DataTableValueType.
- Adds a string representation method for
- Refactors Data Cell and Data CellViewModel to incorporate DataCellTypeValue 724a6f0
- Adds a comparable implementation for DataTableValueType 29616b2 & c12ea98
- Adds optional initialiser to DataTableValueType to automatically infer the right value type. f3d9d2c Improves the type detection algorithm for DataTableValueType enum b0254e8