В каких случаях onLayout() вызывается два раза?

onLayout() дважды (или больше раз) может вызываться в рамках одного layout pass-а — и это может как быть нормальным, так и сигналом об ошибке.

onLayout() вызывается два и более раз, если:

  1. Происходит вложенный layout внутри layout-процесса
  2. Во время onLayout() вызывается requestLayout()
  3. ViewGroup содержит детей, которые требуют переизмерения
  4. Анимация, изменение размеров, или пересоздание вьюшек
  5. ConstraintLayout или другие сложные LayoutManager’ы могут запустить доп. layout pass


Опубликовано

в

от

Метки: