Android Data Binding Recyclerview

Using Recyclerview with the new Android Data Binding framework
Alternatives To Android Data Binding Recyclerview
Project NameStarsDownloadsRepos Using ThisPackages Using ThisMost Recent CommitTotal ReleasesLatest ReleaseOpen IssuesLicenseLanguage
6 years ago14Java
A toolkit help to build Android MVVM Application
Neutronium1,316385 months ago16September 11, 202092mitC#
🚀 Build .NET desktop applications using HTML, CSS and javascript.
Android Data Binding Recyclerview572
5 years ago10apache-2.0Java
Using Recyclerview with the new Android Data Binding framework
Android Mvvm437
5 years ago16apache-2.0Java
MVVM on Android using RxJava and Data Binding
93 years ago24October 31, 20179mitSwift
ReactiveViewModel-esque using RxSwift
Mvvmcross Samples328
4 months ago33ms-plC#
Tutorials and samples for MvvmCross: The .NET MVVM framework for cross-platform solutions.
Android Viewmodelbinding312
6 years ago7Java
A lightweight library aiming to speed up Android app development by leveraging the new Android Data Binding together with the Model-View-ViewModel design pattern.
Tictactoe Mvvm238
4 years ago1Java
Sample android application used to learn the Model View View Model pattern and DataBinding in Android
Todolist Mvvm230
6 years ago3mitSwift
Sample application using MVVM in Swift
7 years ago1apache-2.0Java
Android MVVM lightweight library based on Android Data Binding
Alternatives To Android Data Binding Recyclerview
Select To Compare

Alternative Project Comparisons

Android Data Binding + RecyclerView

Using Recyclerview with the new Android Data Binding framework.


How to start?

Just clone this repository and start playing with it! If you want to use some parts of this repository in your project read below.

Change your gradle file

  • In your main build.gradle add:
classpath ''
  • In your app build.gradle add:
    dataBinding {
        enabled = true

Modify your layout

Remember to use your classes and packages ;-).

<!-- layout.xml -->
<layout xmlns:android=""


Modify your activity

	// your activity
    protected void onCreate(Bundle savedInstanceState)
        usersViewModel = new UsersViewModel();
        usersViewModel.users.add(new SuperUserViewModel(new User("Android", "Dev")));

        binding = DataBindingUtil.setContentView(this, R.layout.users_view);
        binding.activityUsersRecycler.setLayoutManager(new LinearLayoutManager(this));

Modify your ViewModel class

    public class UsersViewModel extends BaseObservable
        public ObservableArrayList<UserViewModel> users;

        public ItemBinder<UserViewModel> itemViewBinder()
                return new ItemBinderBase<UserViewModel>(BR.user, R.layout.item_user);

Some details

Your ViewModel (UsersViewModel in my example) should have field of ObservableArrayList type which will be bind to recycler view.

Next thing is ItemViewBinder. This class is used in BindingRecyclerViewAdapter for creating ViewHolders and it's item views bindings. In my example I've created CompositeItemBinder in order to support two different item types with separate layouts. If you want to display list with one data type you can use ItemBinderBase:

	public ItemBinder<YourClass> itemViewBinder()
          return new ItemBinderBase<YourClass>(BR.your_variable_name, R.layout.your_item_layout);

Please look at and if something is unclear.

Popular Bindings Projects
Popular Viewmodel Projects
Popular Libraries Categories

Get A Weekly Email With Trending Projects For These Categories
No Spam. Unsubscribe easily at any time.