Benchmark Stable, ViewPager2 Stable, and next RecyclerView
The last week gave us the first stable releases of new libraries, new major releases of existing libraries.
New libraries
Benchmark 1.0.0
Benchmark
is a library that allows you to write a performance benchmark of app code and get results. It handles all device configurations issues, stabilizes performance and etc. to ensure that tests will be accurate and consistent.
Benchmark
is the first library from AndroidX that is 100% Kotlin.
ViewPager2 1.0.0
ViewPager2
replaces ViewPager
. The new widget is built on top of RecyclerView
. Old implementation will not be supported anymore and all features will be added only in ViewPager2
.
Improvements from the previous ViewPager are:
- RTL (right-to-left) layout support
- Vertical and horizontal orientations support
- Reliable
Fragment
support (including handling changes to the underlyingFragment
collection) - Dataset change animations (including
DiffUtil
support) - Many possibilities of RecyclerView are available
Migration guide from old ViewPager
to ViewPager2
and the sample app.
New stable major versions
RecyclerView 1.1.0
Changes since 1.0.0:
- Possibility to set smooth scroll animation duration with
RecyclerView.smoothScrollBy(dx: Int, dy: Int, interpolator: Interpolator?, duration: Int)
RecyclerView.setLayoutTransition(LayoutTransition)
is deprecated (formally). UseRecyclerView.setItemAnimator(ItemAnimator)
instead- Default style attribute
recyclerViewStyle
, which allow setting default style in a theme RecyclerView
no implementsNestedScrollingChild3
, enabling it to be informed of when all its nested scrolling parents have stopped consuming nested scrolling distancesPagerSnapHelper
andLinearSnapHelper
now take padding ofRecyclerView
into account regardless of the value ofclipToPadding
LinearLayoutManager.calculateExtraLayoutSpace(RecyclerView.State, IntArray)
can be overridden to customize how much extra layout space should be added to either side of the associatedRecyclerView
. That allows you to render more items located outside the visible area- ViewCompat accessibility actions API no longer breaks
RecyclerView.ItemDelegate
Exifinterface 1.1.0
Changes since 1.0.0:
- Support for HEIF format and more XMP tags
- Added support for constructing an
ExifInterface
object from aFile
orFileDescriptor
- Added more methods for getting attribute:
hasAttribute
,getAttributeBytes
, andgetAttributesRange
Minor releases
Room 2.2.2
- Fixed a bug where collecting a one-to-one relationship with more than 999 rows would cause Room to return
null
relating items
New beta and RCs:
If you know Russian and want to know more about Android development you can subscribe to Android Broadcast Telegram Channel