java通过constraintSet以编程方式设置约束会导致视图消失
每当我连接两个小部件时,起始元素将不再显示。 不幸的是,我不知道这个问题的原因是什么。 ConstraintLayout myLayout已在另一个布局中膨胀
ConstraintLayout myLayout= getActivity().findViewById(R.id.myID);
myLayout.removeAllViews();
ConstraintSet constraintSet = new ConstraintSet();
CheckBox cb = new CheckBox(myLayout.getContext());
cb.setText("CHECKBOX");
cb.setId(View.generateViewId());
myLayout.addView(cb);
constraintSet.connect(cb.getId(),ConstraintSet.END,myLayout.getId(),ConstraintSet.END);
constraintSet.connect(cb.getId(),ConstraintSet.TOP,myLayout.getId(),ConstraintSet.TOP);
constraintSet.applyTo(myLayout);
# 1 楼答案
设置约束后显示,如下所示
# 2 楼答案
我不会关注您的两个布局以及它们的交互方式,但通常情况下,您会添加一个视图并将其连接起来,如下所示:
cs.clone(layout)
constraintSet.applyTo(myLayout)
此外,由于您正在从
myLayout
中删除所有视图,并且没有向其添加任何内容,因此您的布局将是空的。解决这个问题,然后再解决上面的问题