如何防止在布局动画期间底部对齐的视图跳动?

时间:2018-07-10 15:54:10

标签: android

某些背景:我在一个活动的底部有一个ConstraintLayout,随着向其中的RecyclerView中添加或删除项目,该活动会不断增长和收缩。 RecyclerView被限制在其父级的左上方。我在同一父项中有另一个View,受其限制在右下角。此右下角的View应该始终位于同一位置;在其父容器垂直增长或收缩时,它永远都不应看起来像是在移动。

我将容器设置为使用以下内容制作动画:

LayoutTransition transition = new LayoutTransition();
transition.enableTransitionType(LayoutTransition.CHANGING);
cartContainer.setLayoutTransition(transition);

现在,当RecyclerView增大或缩小时,父级布局会相应地设置较大或较小的动画,并且RecyclerView随之移动。问题是在发生这种动画时,底部锚定的 View不会停留在其位置上。相反,当父级处于动画过程中时,它会跳到“新”位置。我认为这是因为子View的位置是由其与父ConstraintLayout top 的关系定义的,并且这个新位置会在动画开始。我需要的是,即使孩子相对于父母的位置在技术上发生了变化,也要使孩子看起来好像一直都在右下角。关于如何实现这一目标有什么想法吗?

0 个答案:

没有答案