将 TextView 与按下的 ImageButton 一起移动

Move TextView together with pressed ImageButton

我有一个如下图所示的 ImageButton,其中右边的按钮是左边按钮的按下状态。在按钮上,我有一个 TextView,我想在用户按下时与按钮一起移动。 ImageButton 和 TextView 在 FrameLayout 中。

我设法通过在 ImageButton 侦听器注册按钮按下时移动 TextView 来解决此问题,但在不同的屏幕上 size/DPI,它会移动得太远或太短。计算 TextView 移动距离的最佳方法是什么?

这是我认为可行的方法。
将按钮放在右侧,并将所需的编辑文本放在相对布局中。使它们成为一个整体。
在框架布局内部,将此相对布局和另一个布局放在下面(未按下时按钮的深色阴影)和它上面的透明布局(与默认情况下的深色阴影和可见性相同的尺寸)。
按下按钮时,将深色布局的可见性设置为消失,将透明布局设置为可见,松开时反之亦然。

这个想法是将 ImageButton 和文本视图放在一个单元中并操纵单元的位置,而不是查找文本视图的偏移量;-)