- Fix issue with ViewPager2 where multiple header views may be added when returning to a previously loaded tab with a sticky header *Thanks @ryandt for the sample repro app. This was used as a base for the new Espresso tests.
- Add
StickyLayoutManager#disableParentViewRestrictions
to turn off the runtime check for valid parent views of theRecyclerView
- AndroidX is now in master -- no need to specify
-androidx
in the version - Fixed #72 (potential memory leak). Thanks @nkontizas!
- Fix AAPT2 build issue (thanks @armansimonyan13!)
- Header visibility now follows changes to the RecyclerView visibility
- If first item is a sticky header, it will not be stickied if the RecyclerView is scrolled to the top. This fixes an issue where the header would cover the edge effect if the RecyclerView had no top padding.
- Fix issues with headers not being cleared if removed from the data set.
- Add several UI tests to prevent future regressions.
It is strongly recommended that users on previous versions, especially 0.4.5 - 0.4.8, upgrade to this version.
- Fix issue where a previously stickied header is not detached after adapter updated with a sticky header at position 0 which also happens to be the first visible position.
- Fix crash when adapter data set is null
- Remove
<application>
tag from library manifest.
- Clear attached header, if any, when a new
LayoutManager
is set on theRecyclerView
.
- Add option to set a listener to notify when headers are attached or detached.
- Fixes a crash when current sticky header is removed from the adapter data set and
notifyDataSetChanged
is called
- StickyHeaderHandler now only needs to provide the dataset supplied to the RecyclerView.Adapter
- Sticky headers will have margins applied if the RecyclerView has padding.
- If orientation is Vertical and there is top padding (or Horizontal and left padding), the RecyclerView must have
clipToPadding
set tofalse
.- If you need top (or left if Horizontal) separation, use margin instead of padding on the RecyclerView.
- If orientation is Vertical and there is top padding (or Horizontal and left padding), the RecyclerView must have