Skip to content

Commit db4f7a9

Browse files
committed
Updates README.md
1 parent 011b1cc commit db4f7a9

File tree

1 file changed

+19
-0
lines changed

1 file changed

+19
-0
lines changed

README.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,25 @@
11
Table and Collection view data sources
22
======================================
33

4+
## Features
5+
6+
- [x] **O(N)** algorithm for calculating differences
7+
- the algorithm has the assumption that all sections and items are unique so there is no ambiguity
8+
- in case there is ambiguity, fallbacks automagically on non animated refresh
9+
- [x] it applies additional heuristics to send the least number of commands to sectioned view
10+
- even though the running time is linear, preferred number of sent commands is usually a lot less then linear
11+
- it is preferred (and possible) to cap the number of changes to some small number, and in case the number of changes grows towards linear, just do normal reload
12+
- [x] Supports **extending your item and section structures**
13+
- just extend your item with `IdentifiableType` and `Equatable`, and your section with `AnimatableSectionModelType`
14+
- [x] Supports all combinations of two level hierarchical animations for **both sections and items**
15+
- Section animations: Insert, Delete, Move
16+
- Item animations: Insert, Delete, Move, Reload (if old value is not equal to new value)
17+
- [x] Configurable animation types for `Insert`, `Reload` and `Delete` (Automatic, Fade, ...)
18+
- [x] Example app
19+
- [x] Randomized stress tests (example app)
20+
- [x] Supports editing out of the box (example app)
21+
- [x] Works with `UITableView` and `UICollectionView`
22+
423
## Why
524

625
Writing table and collection view data sources is tedious. There is a large number of delegate methods that need to be implemented for the simplest case possible.

0 commit comments

Comments
 (0)