Skip to content

MobileToolkit/databinding-android

Repository files navigation

Android data binding extensions

Build / test Validation

A set of Android Databinding enabled activities, fragments, etc. (also Dagger variants).

Installation

To use the library, first include it your project using Gradle

  • Bintray
repositories {
    maven { url("https://dl.bintray.com/mobiletoolkit/public") }
}
  • GitHub packages
repositories {
    maven { url("https://maven.pkg.github.com/MobileToolkit/databinding-android") }
}
dependencies {
    implementation("org.mobiletoolkit.android.databinding:databinding:{RELEASE_TAG}")
    implementation("org.mobiletoolkit.android.databinding:databinding-dagger:{RELEASE_TAG}")
}

How to use

databinding

  • BindingActivity
class FooActivity : BindingActivity<FooBarActivityBinding>(R.layout.activity_foo)
  • BindingAppCompatActivity
class FooActivity : BindingAppCompatActivity<FooBarActivityBinding>(R.layout.activity_foo)
  • BindingAppCompatDialogFragment
class FooDialog : BindingAppCompatDialogFragment<FooBarActivityBinding>(R.layout.dialog_foo)
  • BindingDialogFragment
class FooDialog : BindingDialogFragment<FooBarActivityBinding>(R.layout.dialog_foo)
  • BindingFragment
class FooFragment : BindingFragment<FooBarActivityBinding>(R.layout.fragment_foo)
  • BindingFragmentActivity
class FooFragment : BindingFragmentActivity<FooBarActivityBinding>(R.layout.fragment_foo)
  • BindingViewHolder
data class FooViewModel(val bar: Int)

class FooBarViewHolder(
    context: Context?,
    container: ViewGroup?
) : BindingViewHolder<FooBarViewHolderBinding, FooViewModel>(
    context,
    R.layout.layout_foobar,
    container,
    viewModelVariableId = BR.viewModel
)

databinding-dagger

Same as for databinding, just includes Dagger 2 injections.