mirror of
https://github.com/melihaksoy/Android-Kotlin-Modulerized-CleanArchitecture.git
synced 2026-05-01 05:04:19 +02:00
Using SnackbarBehaviour for pushing list when there's an error
Using SnackbarBehaviour for pushing list when there's an error
This commit is contained in:
@@ -4,18 +4,20 @@ import android.content.Context
|
||||
import android.util.AttributeSet
|
||||
import android.view.View
|
||||
import androidx.coordinatorlayout.widget.CoordinatorLayout
|
||||
import androidx.swiperefreshlayout.widget.SwipeRefreshLayout
|
||||
import com.google.android.material.snackbar.Snackbar
|
||||
|
||||
/**
|
||||
* Simple behaviour for pushing views when snackbar is animating so none of views will remain under snackbar
|
||||
*/
|
||||
class SnackbarBehaviour constructor(
|
||||
context: Context,
|
||||
attributeSet: AttributeSet
|
||||
) : CoordinatorLayout.Behavior<SwipeRefreshLayout>() {
|
||||
) : CoordinatorLayout.Behavior<View>() {
|
||||
|
||||
override fun layoutDependsOn(parent: CoordinatorLayout, child: SwipeRefreshLayout, dependency: View): Boolean =
|
||||
override fun layoutDependsOn(parent: CoordinatorLayout, child: View, dependency: View): Boolean =
|
||||
dependency is Snackbar.SnackbarLayout
|
||||
|
||||
override fun onDependentViewChanged(parent: CoordinatorLayout, child: SwipeRefreshLayout, dependency: View): Boolean {
|
||||
override fun onDependentViewChanged(parent: CoordinatorLayout, child: View, dependency: View): Boolean {
|
||||
val translationY = Math.min(0.0f, (dependency.translationY - dependency.height))
|
||||
child.translationY = translationY
|
||||
return true
|
||||
|
||||
Reference in New Issue
Block a user