Android animateLayoutChanges 和锚定的 fab 闪烁
Posted
技术标签:
【中文标题】Android animateLayoutChanges 和锚定的 fab 闪烁【英文标题】:Android animateLayoutChanges and anchored fab flicker 【发布时间】:2015-11-25 04:15:57 【问题描述】:我有一个 FrameLayout,我在活动创建时用片段替换它,我在其中显示和隐藏一些布局动画更改的视图,这很好用,但是我有一个 FloatingActionButton 锚定到框架布局并且当布局动画隐藏时或者显示 fab 闪烁的视图,好像没有动画并且那些视图立即消失,然后返回并与视图一起动画。
这确实打破了整个过渡的流畅性,所以我的问题是,还有其他人经历过这种情况吗?是否有针对此错误的修复或解决方法?
【问题讨论】:
我看到了类似的东西。我在显示和隐藏的 AppBarLayout 中有一个视图。 AppBar 下方的整个布局在动画之前快速闪烁。你有想过这个吗? 【参考方案1】:SDK 29 中的某些元素似乎仍然存在此问题,例如具有固有过渡的元素。我修复它的方法是在设置属性android:animateLayoutChanges="true"
后将以下标志应用于CoordinatorLayout
ViewGroup。
cLayout.getLayoutTransition().disableTransitionType(LayoutTransition.APPEARING);
cLayout.getLayoutTransition().disableTransitionType(LayoutTransition.DISAPPEARING);
这样,对于已经包含它们的视图,过渡不会重复。
根据您的情况,您可以考虑禁用其他转换类型:
LayoutTransition.CHANGE_APPEARING
LayoutTransition.CHANGE_DISAPPEARING
【讨论】:
以上是关于Android animateLayoutChanges 和锚定的 fab 闪烁的主要内容,如果未能解决你的问题,请参考以下文章
Android 逆向Android 权限 ( Android 逆向中使用的 android.permission 权限 | Android 系统中的 Linux 用户权限 )