2010-08-19 3 views

ответ

43

Android не знает реальный размер при запуске, его необходимо рассчитать. Как только это будет сделано, onSizeChanged() уведомит вас с реальным размером.

onSizeChanged() вызывается как только размер рассчитывается. События не должны поступать от пользователей все время. В этом примере, когда android изменит размер, вызывается onSizeChanged(). То же самое с onDraw(), когда должно быть нарисовано представление onDraw().

onMeasure() вызывается автоматически сразу после вызова measure()

+1

Спасибо за ваш ответ. Не могли бы вы привести пример экземпляра при изменении размера? – iman453

+2

Я обновил решение. Основной вызов onSizeChanged() выполняется после построения вашего представления, но до рисования. В это время система будет вычислять размер вашего представления и уведомлять вас, вызывая 'onSizeChanged()' –

+0

Это намного лучше, чем альтернатива ViewTreeObserver. – Dmacpro

Смежные вопросы