Skip to content

Releases: DenTelezhkin/DTTableViewManager

4.3.0

01 Nov 18:24
Compare
Choose a tag to compare

Dependency changelog -> DTModelStorage 2.2 and higher

Changed

  • Added support for Apple TV platform (tvOS).

Fixed

  • registerNiblessFooterClass method now works correctly.

Renamed

  • objectForCellClass category of methods have been removed to read item in their title instead of object.

Removed

  • TableViewStorageUpdating protocol and conformance has been removed as unnecessary.

4.2.1

12 Oct 08:38
Compare
Choose a tag to compare

Updated

  • Improved stability by treating UITableView as optional

4.2.0

11 Oct 18:16
Compare
Choose a tag to compare

Dependency changelog -> DTModelStorage 2.1 and higher

This release aims to improve storage updates and UI animation with UITableView. To make this happen, DTModelStorage classes were rewritten and rearchitectured, using Swift Set.

There are some backwards-incompatible changes in this release, however Xcode quick-fix tips should guide you through what needs to be changed.

Added

  • registerNiblessHeaderClass and registerNiblessFooterClass methods to support creating UITableViewHeaderFooterViews from code

Fixed

  • Fixed retain cycles in event blocks

4.1.0

04 Oct 17:31
Compare
Choose a tag to compare

Features

New events registration system with method pointers, that automatically breaks retain cycles.

For example, cell selection:

manager.cellSelection(PostsViewController.selectedCell)

func selectedCell(cell: PostCell, post: Post, indexPath: NSIndexPath) {
    // Do something, push controller probably?
}

Alternatively, you can use dynamicType to register method pointer:

manager.cellSelection(self.dynamicType.selectedCell)

Other available events:

  • cellConfiguration
  • headerConfiguration
  • footerConfiguration

Breaking changes

beforeContentUpdate and afterContentUpdate closures were replaced with DTTableViewContentUpdatable protocol, that can be adopted by your DTTableViewManageable class, for example:

extension PostsViewController: DTTableViewContentUpdatable {
    func afterContentUpdate() {
        // Do something
    }
}

4.0.0

13 Sep 15:42
Compare
Choose a tag to compare

4.0 is a next major release of DTTableViewManager. It was rewritten from scratch in Swift 2 and is not backwards-compatible with previous releases.

Read 4.0 Migration guide.

Blog post

Features

  • Improved ModelTransfer protocol with associated ModelType
  • DTTableViewManager is now a separate object
  • New events system, that allows reacting to cell selection, cell/header/footer configuration and content updates
  • Added support for UITableViewController, and any other object, that has UITableView
  • New storage object generic-type getters
  • Support for Swift types - classes, structs, enums, tuples.

3.2.0

11 Sep 17:30
Compare
Choose a tag to compare

Bugfixes

  • Fixed an issue, where storageDidPerformUpdate method could be called without any updates.

3.1.1

27 Apr 12:56
Compare
Choose a tag to compare
  • Added support for installation using Carthage 🍻

3.1.0

10 Apr 14:38
Compare
Choose a tag to compare

Changes

  • Added nullability annotations for XCode 6.3 and Swift 1.2

3.0.5

22 Jan 14:49
Compare
Choose a tag to compare

Features

Added removeAllTableItemsAnimated method.

Bugfixes

Fixed issue, that could lead to wrong table items being removed, when using memory storage removeItemsAtIndexPaths: method.

3.0.2

28 Dec 12:45
Compare
Choose a tag to compare

Changes

  • Supported frameworks installation from CocoaPods - requires iOS 8.