У меня есть нижняя панель приложения с центрированным значком и меню. Я хочу изменить fab выравнивание и меню при выборе элемента в моем списке. Изменения работают отлично, но анимация показывает мигающие эффекты.
Я пытался использовать обработчик для изменения меню, когда закончена потрясающая анимация (300 мс согласно классу нижней панели приложения), но побочный эффект остается
Мой макет:
<androidx.coordinatorlayout.widget.CoordinatorLayout
...>
<androidx.swiperefreshlayout.widget.SwipeRefreshLayout
...>
<androidx.recyclerview.widget.RecyclerView
android:id="@+id/home_expenseList"
.../>
</androidx.swiperefreshlayout.widget.SwipeRefreshLayout>
<com.google.android.material.bottomappbar.BottomAppBar
app:layout_dodgeInsetEdges="bottom"
android:id="@+id/appBar"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_gravity="bottom"
app:hideOnScroll="true"
app:navigationIcon="@drawable/ic_menu"
app:layout_scrollFlags="scroll|enterAlways"/>
<com.google.android.material.floatingactionbutton.FloatingActionButton
android:id="@+id/appBar_fab"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:src="@drawable/ic_add"
app:tint="@null"
app:layout_anchor="@id/appBar" />
</androidx.coordinatorlayout.widget.CoordinatorLayout>
Мой код:
override fun onSelectionModeChange(isActive: Boolean) {
selectionIsActive = isActive
when (isActive) {
true -> {
appBar.navigationIcon = null
appBar.replaceMenu(R.menu.bottom_app_bar_selection_menu)
appBar.fabAlignmentMode = BottomAppBar.FAB_ALIGNMENT_MODE_END
appBar_fab.setImageDrawable(getDrawable(R.drawable.ic_close))
}
false -> {
appBar.navigationIcon = getDrawable(R.drawable.ic_menu)
appBar.replaceMenu(R.menu.bottom_app_bar_menu)
appBar.fabAlignmentMode = BottomAppBar.FAB_ALIGNMENT_MODE_CENTER
appBar_fab.setImageDrawable(getDrawable(R.drawable.ic_add))
}
}
}
Я ожидал такую анимацию: https://storage.googleapis.com/spec-host/mio-staging%2Fmio-components%2F1568406561463%2Fassets%2F1KJSld6h82fzkcafrHCDFPOITibpWxF-5%2Fbehavior-layout-primary.mp4
У меня есть: Боттомбарная анимация
Спасибо