To add material bindings, import corbind-material
module:
dependencies {
implementation("ru.ldralighieri.corbind:corbind-material:1.11.0")
}
List of extensions
Component | Extension | Description |
---|---|---|
AppBarLayout | offsetChanges |
Called when the AppBarLayout’s layout offset has been changed |
View (BottomSheetBehavior) |
slides |
Called when the bottom sheet is being dragged. |
stateChanges |
Called when the bottom sheet changes its state. | |
Chip | closeIconClicks |
Called when the chip’s close icon is clicked. |
ChipGroup | checkedChanges |
Called when the checked chips are changed. |
View (HideBottomViewOnScrollBehavior) |
bottomViewScrollStateChanges |
Called when the bottom view changes its scrolled state. |
MaskableFrameLayout | maskChanges |
Called when changes in a mask’s RectF occur. |
MaterialButton | checkedChanges |
Called when the checked state of a MaterialButton has changed. |
MaterialButtonToggleGroup | buttonCheckedChangeEvents |
Called when a MaterialButton in this group is checked or unchecked (only not in single selection mode). |
buttonCheckedChanges |
Called when a MaterialButton in this group is checked (only in single selection mode). |
|
MaterialCardView | checkedChanges |
Called when the card checked state changes. |
MaterialDatePicker | cancels |
Called when the user cancels the date picker via back button or a touch outside the view. It is not called when the user clicks the cancel button. To add a listener for use when the user clicks the cancel button, use negativeClicks extension. |
dismisses |
Called whenever the date picker is dismissed, no matter how it is dismissed. | |
negativeClicks |
Called when the user clicks the date picker cancel button. | |
positiveClicks |
Called when the user confirms a valid selection of the date. | |
MaterialTimePicker | cancels |
Called when the user cancels the time picker via back button or a touch outside the view. It is not called when the user clicks the cancel button. To add a listener for use when the user clicks the cancel button, use negativeClicks extension. |
dismisses |
Called whenever the time picker is dismissed, no matter how it is dismissed. | |
negativeClicks |
Called when the user clicks the time picker cancel button. | |
positiveClicks |
Called when the user confirms a valid selection of the time. | |
NavigationBarView | itemReselections |
Called when the currently selected navigation item is reselected. |
itemSelections |
Called when a navigation item is selected. | |
NavigationView | itemSelections |
Called when an item in the navigation menu is selected. |
RangeSlider | touches |
Called when a range slider’s touch event is being started/stopped. |
valuesChanges |
Called a range slider’s value is changed. This is called for all existing values to check all the current values use. | |
valuesChangeEvents |
A more advanced version of the valuesChanges . |
|
SearchBar | navigationClicks |
Called whenever the user clicks the navigation button at the start of the searchbar. |
SearchView | transitionStateChanges |
Called when the given SearchView's transition state has changed. |
transitionStateChangeEvents |
A more advanced version of the transitionStateChanges . |
|
View (SideSheetBehavior) |
sideSheetSlides |
Called when the side sheet is being dragged. |
sideSheetStateChanges |
Called when the side sheet changes its state. | |
Slider | touches |
Called when a slider’s touch event is being started/stopped. |
valueChanges |
Called a slider’s value is changed. | |
valueChangeEvents |
A more advanced version of the valueChanges . |
|
Snackbar | dismisses |
Called when the given Snackbar has been dismissed, either through a time-out, having been manually dismissed, or an action being clicked. |
shown |
Called when the given Snackbar is visible. | |
View (SwipeDismissBehavior) |
dismisses |
Called when view has been dismissed via swiping. |
dragStateChanges |
Called when the drag state has changed. | |
TabLayout | selections |
Called when a tab enters the selected state. |
selectionEvents |
A more advanced version of the selections . |
|
TextInputLayout | endIconChanges |
Called when the end icon changes. |
endIconClicks |
Called when the end icon is clicked. | |
endIconLongClicks |
Called when the end icon is long clicked. | |
startIconClicks |
Called when the start icon is clicked. | |
startIconLongClicks |
Called when the start icon is long clicked. |
Example
chipGroup.checkedChanges() // Flow<Int>
.onEach { /* handle checked ids */ }
.flowWithLifecycle(lifecycle)
.launchIn(lifecycleScope) // lifecycle-runtime-ktx
More examples in source code