Diolor / BlueTape

Reactive data binding library for Android

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

BlueTape

build status

Data binding library for Android which is:

  • Lightweight
  • Doing one thing and doing it well
  • Easily extendable
  • Fully covered with unit tests
  • Working great with Jack, Retrolambda or Kotlin

Getting started

Here is a simple yet common example of how to use BlueTape:

BlueTape blueTape = BlueTape
  .with(() -> composite(                    // More about composite() later
          id(R.id.text,                     // id() takes id of the view and list of functions which will bind data to this view
              text(someVariable),           // text() is assigning text to current TextView. No cast needed!
              textColor(Color.RED)          // Following the same logic textColor() changes the color of the text
          ),
          id(R.id.button,
              onClick(v -> doSomething())   // onClick() works as `setOnClickListener` on a normal button
          )
  ))
  .into(this);                              // "this" might be either an Activity or a View

Now, every time data is updated we can trigger BlueTape to update all data in the views:

someVariable = "New value";

blueTape.update();   // This will re-bind all views which we declared before

Add it to your project

Gradle:

repositories {
  maven { url 'https://jitpack.io' }
}

dependencies {
  compile 'com.github.dmitry-zaitsev:BlueTape:1.0.0'
}

About

Reactive data binding library for Android

License:Apache License 2.0


Languages

Language:Java 100.0%