Я думаю, что LinearLayout добавит иерархию узлов, для визуализации которой потребуется больше времени, чем для RelativeLayout или ContraintLayout, верно?
Вложенные LinearLayout
виджеты может медленнее отображаться. Не гарантируется, что будет медленнее отображаться. Использование вложенных весов является одним из известных способов получить медленный набор вложенных LinearLayout
виджетов.
Почему Android считает, что ContraintLayout использует больше, чем RelativeLayout и LinearLayout?
ConstraintLayout
обрабатывает больше сценариев, чем LinearLayout
и RelativeLayout
. ConstraintLayout
проще для IDE поддерживать с помощью перетаскивания, чем RelativeLayout
.
Даже я могу сделать такой же макет в LinearLayout или RelativeLayout
Существует множество сценариев, которые было бы трудно реализовать в LinearLayout
или RelativeLayout
, но с которыми ConstraintLayout
можно легко справиться, например:
Круговое позиционирование
Минимальный и максимальный размер самого ConstraintLayout
(чтобы помочь wrap_content
стать слишком маленьким или слишком большим)
Наличие у ребенка определенного пропорции
Реализация некоторых разновидностей цепей
Привязка детей к искусственным строкам на основе правил, таким как Guideline
и Barrier