Swiftpack.co - Package - pavankataria/SwiftDataTables

SwiftDataTables

Platform Swift Version License Version CocoaPodsDL

About

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.

animation

Requirements

  • iOS 8.0 - iOS 11+
  • Xcode 9
  • Swift 3

Examples

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 with 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

Installation

CocoaPods

To install it, simply add the following line to your Podfile:

pod "SwiftDataTables"

Then run pod install with CocoaPods 1.1.0.beta.1 or newer.

Author

Pavan Kataria

Contributing

  1. Create an issue and describe your idea
  2. [Fork it] (https://github.com/pavankataria/SwiftDataTables/fork)
  3. Create your feature branch (git checkout -b my-new-feature)
  4. Commit your changes (git commit -am 'Add some feature')
  5. Publish the branch (git push origin my-new-feature)
  6. Create a new Pull Request
  7. 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!

License

SwiftDataTables is available under the MIT license. See the LICENSE file for more info. This package was inspired by JQuery's DataTables plugin.

Follow us

Twitter URL Twitter Follow

Github

link
Stars: 47
Help us keep the lights on

Dependencies

Used By

Total: 0

Releases

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! 🔎 🔎

Summary

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.

Technicals

  • 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

Summary:

  • Improves the sorting algorithm for columns by scanning the data passed into the SwiftDataTable class and automatically infer the type of the data.
  • Changes Cell Row Representable to use A new DataTableValueType that moves away from the [[String]] row construction.

Technical:

  • original initialiser has been moved to a convenience one. users can still inject [[String]] into the SwiftDataTable class: [[String]].
  • Adds a new DataTableValueType.
  • Adds a string representation method for DataTableValueType.
  • 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