Почему viewdidlayoutsubviews вызывает несколько раз?

Я разрабатываю универсальное приложение iOS для Swift, используя автоматическую компоновку и поддерживаю только портрет.

Я нашел UIViewController#viewdidlayoutsubviews несколько раз. Вместо этого viewDidLoad ТОЛЬКО звонит один раз при запуске MyApp UIViewController.

Почему viewdidlayoutsubviews вызывает несколько раз? Ограничения на каждый UIView (UIButtons, UITextFields и т. Д.) Будут выполняться в порядке?

Любая информация будет оценена по достоинству.

2 Solutions collect form web for “Почему viewdidlayoutsubviews вызывает несколько раз?”

LoadView называется только одним: когда нужно загружать представление.

LayoutSubviews вызывается один раз за цикл цикла в любом представлении, на которое было setNeedsLayout или setNeedsDisplayInRect – это включает в себя всякий раз, когда под просмотр был добавлен в представление, прокрутка, изменение размера и т. Д.

См. Эту ссылку для получения дополнительной информации. Он использует Objective-C, но информация по-прежнему сохраняется.

Лучшее, что нужно сделать, и это хорошо мне помогло – это привыкнуть добавлять к журналу или заявке на печать методы, которые вы не уверены

Я использую это -> print ("Hello From (NSStringFromSelector (#function))")

или это, если внутри подкласса View Swift.print («Hello From (NSStringFromSelector (#function)»)

Он выведет метод при его вызове.

  • Невозможно получить доступ к индексу элемента tabBar с помощью swift.
  • CoreData: может использовать только -performBlock: в NSManagedObjectContext, который был создан с очередью
  • Обработчик сообщения сценария не работает
  • Любой способ получить тело ответа во время ошибок HTTP?
  • Swift: Почему работает переключение текстовых полей?
  • Где разместить общие функции утилиты в iOS 8 + Swift
  • Загружать пользовательскую ошибку htmlString, когда WKWebView loadRequest терпит неудачу
  • Ошибка строки состояния входа в UIViewController
  • Ошибка UICollectionViewController в Swift 3.0: должна быть инициализирована параметром макета не-nil
  • Xcode beta 6 iOS 8: Симулятор не работает
  • Firebase Swift: запрос для нескольких значений
  • Interesting Posts

    didUpdateUserLocation не вызывается, когда view для userLocation является настраиваемым

    Неопределенные символы для архитектуры armv7 при добавлении CocoaAsyncSocket

    Open Source Objective C (или C / C ++) библиотека для аудио в H.323?

    Совместимость с iOS

    ограничение авторотации на определенные виды

    UICollectionView получил атрибуты макета для ячейки в ios 7

    Неопределенные символы для архитектуры x86_64: «_OBJC_CLASS _ $ _ CMMotionManager», на которые ссылаются: objc-class-ref в GooglePlus (GPPSpamSignal.o)

    XCode5 не будет принимать все мои значки и запускать изображения

    При установке ограничений в раскадровке Xcode постоянно падает

    долгосрочный API REST

    где я могу найти документацию для API Darwin от Apple

    IBM Worklight 6.1 – Неисправность адаптера в iOS 5 после обновления до версии 6.1

    Box2D Gravity для конкретного объекта?

    Xcode 7.0.1 – Неверная поддержка Swift – отсутствует папка SwiftSupport.

    Как отобразить изображение формата eps в uiimageview

    PhoneC: Разработка iOS проста с помощью XCode, Swift3, UITableView, cocatouch, давайте создадим приложения для iPhone, iPad и Macbook.