Я пытаюсь программно разместить изображение ладьи внутри квадрата внутри макета ограничения.Когда я жестко кодирую его на месте в xml, он работает нормально, но у меня возникают проблемы с корректной работой соединений в моем Java-коде.Вот что я написал:
ImageView newRook = new ImageView(DigitalBoardActivity.this);
newRook.setImageResource(R.drawable.chess_rdt60);
ConstraintLayout constraintLayout = findViewById(R.id.constraintLayout);
ConstraintSet set = new ConstraintSet();
constraintLayout.addView(newRook,0);
newRook.setId(View.generateViewId());
set.clone(constraintLayout);
set.connect(newRook.getId(), ConstraintSet.TOP, R.id.b1, ConstraintSet.TOP, 0);
set.connect(newRook.getId(), ConstraintSet.RIGHT, R.id.b1, ConstraintSet.RIGHT, 0);
set.connect(newRook.getId(), ConstraintSet.LEFT, R.id.b1, ConstraintSet.LEFT, 0);
set.connect(newRook.getId(), ConstraintSet.BOTTOM, R.id.b1, ConstraintSet.BOTTOM, 0);
set.applyTo(constraintLayout);
при запуске этого кода ничего не появляется.Однако, когда я закомментирую все, кроме одной из строк «set.connect», ладья оказывается правильно подключенной к тому соединению, которое я оставила.Есть ли причина, по которой я не могу вызывать set.connect более одного раза?
РЕДАКТИРОВАТЬ: похоже, это была проблема с размерами, извините, если я потратил чье-то время.