v2.0.0
- Major change: Groupie 2.0 now supports pure Java and Kotlin! 🎉
The 1.0 library has been split into a core library (groupie
).
There are two optional supplemental modules for data binding and Kotlin extensions.
If you're new to the library, please check out the main README for instructions on getting started! In additional to using your existing ViewHolders, you can add new items to your list with shared generic viewholders using Kotlin Android Extensions or Android's data binding.
If you've been using the pre-release version, this is a breaking change in the groupie-kotlin-android-extensions
library.
- Fix for the problem where Kotlin Android extensions didn't support view caching in view holders. (Note, if you are using Kotlin Android extensions in your own viewholders and you are not manually caching the view references, you have this problem too.)
In order to enable support, please update to the latest Kotlin (at least 1.2) and enable the experimental flag using
androidExtensions {
experimental = true
}
The fixes necessary for view caching are already in the groupie-kotlin-android-extensions
library. However:
- References formerly on the item view such as
viewHolder.itemView.title
are now on the viewholder, e.g.viewHolder.title
. - The import required for Android Extensions has changed and no longer requires
.view.*
More information on the feature can be found here: https://github.com/Kotlin/KEEP/blob/master/proposals/android-extensions-entity-caching.md
- Bug fix in ExpandableGroup.addAll() (#108, #109)
- Bug fix for notifications in Section.removeAll()
- Add Group.removeAt(int index)
- Small fixes to example project
UpdatingGroup
is now deprecated andSection.update()
has been added.
Thanks to contributors @pzgz, @hardysim, @kjones, @SimonMarquis, and all others who have used and tested the last few releases!
Happy New Year :)