Автоматическое размещение не закончено в viewDidAppear()
.
Вы можете получить размер кадра в viewWillAppear
и viewDidLayoutSubviews
, оба из которых вызываются более одного раза - но последний вызов будет иметь правильный размер кадра.
Вы также можете получить его в viewDidAppear
, но это может быть слишком поздно для ваших нужд.
Обычный подход - создать var
, содержащий начальный размер, и затем запустить любой код, для которого требуется фактический размер кадра в viewDidLayoutSubviews
, если текущий размер кадра отличается от сохраненного размера (и обновления сохраненного размера).