Android 对ConstraintLayout 下的视图重复多次 bottomMargin 无效只margin第一次的。我怎么才能解决他 让其回到动态 因为我需要做动画效果
你可以使用 ConstraintSet 来动态修改 ConstraintLayout 中的视图约束。在 ConstraintSet 中,你可以使用 connect() 方法来修改视图的约束,使用 margin() 方法来修改视图的 margin。下面是一个示例代码:
ConstraintSet constraintSet = new ConstraintSet();
constraintSet.clone(constraintLayout);
// 修改视图的约束
constraintSet.connect(view.getId(), ConstraintSet.TOP, parent.getId(), ConstraintSet.TOP);
constraintSet.connect(view.getId(), ConstraintSet.START, parent.getId(), ConstraintSet.START);
constraintSet.connect(view.getId(), ConstraintSet.END, parent.getId(), ConstraintSet.END);
// 修改视图的 margin
constraintSet.setMargin(view.getId(), ConstraintSet.BOTTOM, 50);
// 应用修改后的约束
constraintSet.applyTo(constraintLayout);
在这个示例代码中,我们首先使用 clone() 方法来克隆原始的 ConstraintSet,然后使用 connect() 方法来修改视图的约束,使用 setMargin() 方法来修改视图的 margin。最后,我们使用 applyTo() 方法来应用修改后的约束
原文地址: http://www.cveoy.top/t/topic/dowd 著作权归作者所有。请勿转载和采集!