动态地在约束布局中重新定位 textview

reposition textview in constraint layout dynamically

我正在构建一个 android 应用程序,该应用程序可以执行类似计算的 3 种变体。 我在显示 inputs/results 的图像视图中有一个图像视图、三个单选按钮和四个文本视图。我有用于实际输入的编辑文本和一个用于计算的按钮。那不是我的问题。 我可以通过选中适当的单选按钮来加载适当的图像 由于每个图像都略有不同,我想重新定位每个图像的文本视图,以便它们更好地与图像对齐。 在布局设计期间,我加载了适当的文本视图,将文本视图放置在我想要的位置,并复制了水平和垂直偏移量。 当我更改图像时,无法弄清楚如何更改偏差以移动文本视图。 我正在使用约束布局。 谢谢史蒂夫

ConstraintLayout.LayoutParams class 有两个字段:horizontalBiasverticalBias。因此,您可以像这样更新 ConstraintLayout 的任何子视图的偏差值:

ConstraintLayout.LayoutParams params = (ConstraintLayout.LayoutParams) view.getLayoutParams();
params.verticalBias = 0.3f;
view.setLayoutParams(params);