FrameLayouts допускает только ОДНОГО дочернего элемента (хорошо, что они позволяют N дочерним элементам, но они перекрываются, потому что он не поддерживает позиционирование дочерних элементов, а ожидает, что они займут все доступное пространство), поэтому, если вы хотите использовать ConstraintLayout для позиционированиядва элемента внутри FrameLayout, тогда вам нужно убедиться, что дочерние элементы вашего FrameLayout являются ViewGroup, которая позволяет позиционировать своих собственных дочерних элементов.
Давайте посмотрим, что вы получили.
Ваш кореньFrameLayout, возможно, вам следует начать с создания ConstraintLayout ...
Вы просите свой макет Root обернуть его содержимое. Если это не обычное представление, это несколько хмурится, но не неправильно;Поскольку я не знаю, как вы это используете, трудно сказать, является ли это правильным подходом в этом случае.
Я не знаю, как должен выглядеть ваш пользовательский интерфейс, но из того, что я вижу, у вас есть серия вложенных LinearLayouts, Vertical, затем Horizontal, чтобы иметь ImageView и VideoView ... не уверен, как вы ожидаетеони должны быть расположены.
Вниз Ниже у вас есть пустой LinearLayout ... (?)
, а затем вы бросили два FAB.
Это не сработает. Я предлагаю вам вернуться ко всему макету (что, кстати, неверно при вставке, потому что вы закрываете FrameLayout
дважды ...).
Если вы публикуете изображение того, что вы хотите получить,возможно, мы сможем помочь вам лучше понять, где ваша проблема. На самом деле это невозможно определить.
Ответ на ваш вопрос, как написано в это время:
"Как я могу добавить макет ограничения только для двух последних FAB? "
Вы не можете (для целей, которые, я думаю, вы хотите), но если вы действительно хотите понять, почему и что произойдет:
Просто добавьте внутри вашего FrameLayout this:
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="wrap_content"
android:layout_height="wrap_content"
>
<!-- YOUR FABS GO HERE -->
</androidx.constraintlayout.widget.ConstraintLayout>
Это, очевидно, НЕ СМОТРИТ ПУТЬ, КОТОРЫЙ ВЫ ХОТИТЕ, но вот почему я спросил вас в комментарии выше: «покажите нам, что вы хотите, нам нужна минимальная воспроизводимость пример того, что вам нужно ".
Была причина, по которой я попросил об этом, чтобы не раздражать вас, а помогать вам. Вы решили проигнорировать это, и это насколько я могу помочь вам с информацией, которую я имею.