Android Документація каже , що є два розміри для зору, виміряних розмірів і розмірів малюнка . Виміряний розмір - це той, який обчислюється в проході міри ( метод onMeasure ), тоді як розміри креслення - це фактичний розмір на екрані. Зокрема, в документації сказано, що:
Ці значення можуть, але не повинні, відрізнятися від виміряних ширини та висоти.
Отже, моє запитання: що може зробити розмір креслення відмінним від вимірюваного? Якщо метод onMeasure (int, int) дотримується вимог до макета (задається як параметри widthMeasureSpec та heightMeasureSpec , як SDK може вирішити , що подання має мати інший розмір креслення?
Крім того, як / де у вихідному коді Android виміряна ширина / висота використовується для обчислення ширини / висоти креслення? Я намагався розглянути вихідний код View , але не можу зрозуміти, як виміряна Ширина / Висота використовується для обчислення остаточної ширини / висоти. Можливо, це пов’язано з підбиванням, але я не впевнений.