使用同一布局中的过渡动画布局更改

Animate layout changes using a transition in same layout

我正在尝试创建我的第一个复合控件,它应该如下所示:

我正在考虑为容器使用 LinearLayout,为每个数字使用一个 TextView,所选数字将具有圆形背景,当用户单击该数字时,从当前数字中删除背景并将其设置为新的,然后以某种方式获得 android 来制作动画。

这看起来有点像共享元素过渡,只是这不是元素,只是背景。

我怎样才能完成这个转换?

我会创建这个:

Relativelayout - (White background, rounded corners)
      └ Framelayout - (Green background, rounded corners)
      └ LinearLayout
             └ TextView 1 |  TextView 2 | TextView 3

然后在选择时获取文本视图的位置,中心,并使用该位置移动 Framelayout。为动画使用 interpolatorAccelerateDecelerateInterpolator。您可以使用 XML 或代码制作动画,这取决于您。

您可以使用 ImageView 或其他代替 FrameLayout,这是基于意见的决定。