在我的XML中,我有一个ConstaintLayout。这里有一个具有以下设置的ImageView:
<ImageView
android:layout_width="wrap_content"
android:layout_height="wrap_content"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintHorizontal_bias="1"
app:layout_constraintStart_toEndOf="@+id/game_square"
app:layout_constraintTop_toTopOf="parent"
app:srcCompat="@mipmap/ic_game_quadrat"
android:visibility="invisible"
android:id="@+id/game_right"/>如何访问app:layout_constraintHorizontal_bias="1“上的java文件以将其更改为例如0。
莫里茨
发布于 2017-12-30 09:02:23
在稍微改变一下其他的分析器之后,我找到了一个解决方案:
ConstraintLayout cl = (ConstraintLayout) findViewById(R.id.activity_constraint);
ConstraintSet cs = new ConstraintSet();
cs.clone(cl);
cs.setHorizontalBias(R.id.game_right, (float) 0);
cs.applyTo(cl);莫里茨
发布于 2017-12-29 10:30:06
你可以尝试这样的方法
ConstraintSet constraintSet = new ConstraintSet();
constraintSet.clone(context, R.id.activity_constraint);
float biasedValue = 0f;
constraintSet.setHorizontalBias(R.id.game_right, biasedValue);
constraintSet.applyTo((ConstraintLayout) findViewById(R.id.activity_constraint));发布于 2017-12-29 10:36:19
更改app:layout_constraintHorizontal_bias=中的ConstraintLayout“”
而不是使用ConstraintSet
这个类允许您以编程方式定义一组要与
constraints一起使用的ConstraintLayout。它允许您创建和保存约束,并将它们应用到现有的ConstraintLayout中。ConstraintsSet可以以各种方式创建:
码
ConstraintSet set = new ConstraintSet();
ImageView view = (ImageView)findViewById(R.id.game_right);
ConstraintLayout constraintLayout = (ConstraintLayout)findViewById(R.id.activity_constraint);
set.clone(constraintLayout);
set.setHorizontalBias(view,0);
set.applyTo(constraintLayout);https://stackoverflow.com/questions/48021102
复制相似问题