Advanced RecyclerView¶
Advanded RecyclerView is an extension library of the RecyclerView
which brings powerful features, such as Drag & Drop, Swipe, Expand, combining Adapters, etc...
Demo app¶
The above demo video was taken with a very old version of this library (v0.6 - Feb 2, 2015). Now the app contains 26 demos! Let's give it a try
Phirosophies¶
-
Never inherit
RecyclerView
classReduces library conflictions, easy to integrate with existing code
-
Implement each features as separated modules
Pick features only what you need
-
Primitive API set rather than user-friendly huge API sets
Looks difficult at a glance, but gives great flexibility like original
RecyclerView
Features¶
- Swipe
- Swipe dismiss and swipe pinning operation. (like Google's Inbox app)
- Drag and Drop
- Smooth item reordering with linear list (
LinearLayoutManager
). It behaves like the playlist of Google's Play Music app. - Also drag & drop work with
GridLayoutManager
andStaggeredGridLayoutManager
.
- Smooth item reordering with linear list (
- Expand
- A list with collapsible groups and its children. This feature is port of the
ExpandableListView
of Android framework.
- A list with collapsible groups and its children. This feature is port of the
- Wrapper adapter
- Inject additional functionalities to
RecyclerView.Adapter
by using the Decorator patten (Header, Footer, Section, Combining multiple adapters, etc...)
- Inject additional functionalities to
- Misc.
- All swipe, drag and drop, expand and wrapper adapter features work together!
- An
ItemAnimator
, it behaves exact the same as the defaultSimpleItemAnimator
, but its code is refactored. More easy to customize! - Some
ItemDecoration
s. Adding drop shadows to each items, drawing separators.