в нем практически во всех layout используется ConstraintLayout. Насколько это нормально, учитывая, что он и в layout для вью холдеров используется, и т.д.? Есть ли смысл упростить, перейти на Relative или простой Linear без вложенности? Не слишком тяжело с точки зрения производительности везде его пихать?
relative раза в 3 медленее constraint начиная с 7 андройда (а до этого +- одинаково)
Зависит от самого лейаута. Если там можно впихнуть что-то проще с приемлемым уровнем вложенности то меняй. А менять constraint на большой linear с например 5 вложенными я бы не стал
интересный тезис. Есть замеры?
в скрине сравниваются вложенные ViewGroup с Constraint (неверное сравнение) А то, что у Вас view'ха ифлейтится дольше экрана тоже тезис некорректный (во-первых это либа, во вторых в этой ViewGroup есть дочерние элементы)
Наоборот. ConstraintLayout - это монстр, который, если его неправильно применять, может привести даже к ANR.
ConstraintLayout это хорошо и модно, но нельзя им злоупотреблять. У ConstraintLayout главное чтобы была вложенность не глубже 1 уровня. Он для этого и придуман. Некоторые специалисты вкладывают несколько ConstraintLayout один в другой, а потом удивляются, откуда у них тормоза вплоть до ANR. В общем, если работает как надо, то ничего не трогай.
ConstraintLayout действительно быстрый. Был, когда был в альфе. Потом Гугл все исправил, и начиная с последних бета-версий превратил его в тормозного монстра.
Я вообще не понимаю как они приходят к мысли пихнуть в констреинт другой лейаут. Когда делаю ревью кода новых разработчиков у каждого я в первом коммите писал чтобы они убрали вложенные лейауты из констреинта
Потому что они знают, что всегда можно один лэйаут вложить в другой 😁
печально
Обсуждают сегодня