Android 是否可以将ConstraintLayout子项的大小强制为零?

Android 是否可以将ConstraintLayout子项的大小强制为零?,android,android-constraintlayout,Android,Android Constraintlayout,android:layout\u height=“0dp”似乎被解释为匹配约束 我希望以编程方式将TextView的高度强制为0。我希望避免执行TextView.setVisibility(GONE),以避免在任何地方都必须定义角点 是否可以指定子对象仍然可见,但其高度为0?如果删除底部约束 app:layout\u constraintBottom\u tobottomf和app:layout\u constraintBottom\u toTopOf从您的文本视图中,然后以下操作应起作用: b

android:layout\u height=“0dp”
似乎被解释为
匹配约束

我希望以编程方式将TextView的高度强制为0。我希望避免执行TextView.setVisibility(GONE),以避免在任何地方都必须定义角点


是否可以指定子对象仍然可见,但其高度为0?

如果删除底部约束
app:layout\u constraintBottom\u tobottomf
app:layout\u constraintBottom\u toTopOf
从您的文本视图中,然后以下操作应起作用:

binding.your_textview.layoutParams.height = 0
binding.your_textview.requestLayout()
你可以做到。 这应该足够了/在宽度/高度属性仍为0dp时删除所有约束

ConstraintSet constraintSet = new ConstraintSet();
constraintSet.clone(constraintLayout);
constraintSet.clear(id_of_the_view);
constraintSet.applyTo(constraintLayout);

您可以在code中将其大小设置为
1
,也可以在xml中将其设置为
1px
,并使其不可见。一个像素不明显,
ConstraintLayout
仍然不会将其视为其他任何东西。

当视图高度设置为零时,不清楚您希望发生什么。其他观点是否应该改变反应,以及如何改变?还是希望所有视图都保持不变?我希望其他视图遵循它们的约束。在我的例子中,这将是一个转变,因为它们在需要消失的视图顶部对齐。但实际上,这只是一般情况。这就像把42dp或666dp,我只希望它是0dp。这会起作用,但约束将不再起作用。将维度设置为0的目的正是为了避免更改约束。恐怕你不能既吃蛋糕又吃蛋糕。也许发布XML代码,以便更好地理解您要做的事情。