Best android open-source packages and libraries.


A RecyclerView(advanced and flexible version of ListView in Android) with refreshing,loading more,animation and many other features.
Updated 1 month ago


Download LicenseStories in Ready

Master branch:Build Status

Dev branch:Build Status


UltimateRecyclerView is a RecyclerView(advanced and flexible version of ListView) with pulling to refresh, loading more, swiping to dismiss, draging and drop, animations ,sticky header,show or hide toolbar and FAB when scrolling and many other features.You can use it just like RecyclerView. Support AndroidX now.

Notice that UltimateRecyclerView is a project under development.

Your donations is highly appreciated. Thank you!


  • Swipe to refresh(using
  • Many kinds of animations
  • Swipe to dismiss
  • Parallax or normal head view
  • Drag and drop items
  • Loading more when reach the last item(infinite scrolling)
  • Custom views in loading more
  • Showing or hiding toolbar and floating button when scrolling
  • Scrollbars
  • Colorful styles of swipe to refresh
  • Sticky header like instagram
  • Support different layout in adapter
  • Loading adapter with animation
  • Expandable view in recyclerview

Quick Setup (Basic Usage)

1.Using Gradle:
repositories {
dependencies {
    compile 'com.marshalchen.ultimaterecyclerview:library:0.9.0'

or grab via Maven


For more details, you can read the Wiki and the demo of the project.

Version Log

  • v0.8.0 Migrate to AndroidX

  • v0.7.0 Support most features in Recyclerview 24.0.0. Improve the UltimateAdapter. Reduce the size of the library. Fix some bugs.

  • v0.5.8 In this version we are now based on support library 23.4.0. We have fixed the load more and disable load more function from early triggers. There is no need to change anything from their implementations. Please read up on the example code if you have any questions from the implementations.

  • v0.5.6 In this version we now have 23.3.0 support library and the min version is supported all the ways to v13. New added feature that allow us to adding have node connector on each item on linearlayoutmanager. By extending TimeLineView you will now have unlimited builds from the things that connected to each dot.

  • v0.5.0 this library will be based on v23.2.1 from now on. if you need have the v23.1.1 please go back to the previous release. detail of this upgrade please see #342

  • v0.4.9 This is the last version that will be based on V23.1.1. and this library will not be supported on this version. For further supports please refer to the latest release.

  • v0.3.11 There are still version that is based on 22.+

Upcoming features:

Notice that it might not be the latest version

Demo App / Sample Code:

  • Due to rapid updates and developments we have decided to host the demo APK on github
  • Check out this link for latest demonstration for the code
  • Video demo for grid layout demo
  • or you can check it out already compiled at Google Play
  • You can clone the project and compile it yourself (it includes a sample), or you can check it out already compiled at Google Play
  • You can read more usage in wiki and welcome to make your own tutorials in here.

Welcome to fork and PR (pull request)

If you have some good ideas, please tell us. My email is cymcsg # it is a good idea to put your idea on the issue. If you want to use a rapid development framework for developing apps, you can try UltimateAndroid Framework.


ultimate_recyclerview ultimate_recyclerview ultimate_recyclerview ultimate_recyclerview ultimate_recyclerview grid_layout grid_layout admob expandable node multitype


If there are someone who I do not mention here,please accept my sincerely appologies and tell me.


Donate $9.99: [![$9.99](](


Bitcoin Donation Accepted wallet


Copyright 2014-present Marshal Chen

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
See the License for the specific language governing permissions and
limitations under the License.