2016-06-06 13 views
0

Я делаю приложение для iPhone быстрым, здесь ViewDidAppear и ViewWillAppear вызывается несколько раз на одном viewDidLoad в приложении ios swift?ViewDidAppear и ViewWillAppear вызывается несколько раз на одном viewDidLoad в приложении ios swift

, пожалуйста, помогите мне.

+0

Можете ли вы приложить свой код контроллера вида –

+1

Фрагмент кода будет оценен для лучшего понимания;) –

ответ

3

Если вы не знакомы с жизненным циклом UIViewController, я действительно рекомендую вам начать здесь Apple documentation и here.

Но в очень короткий ответ

Метод viewDidLoad - Этот метод вызывается после того, как контроллер представления загружен его вид иерархии в память. Этот метод вызывается независимо от того, была ли иерархия представлений загружена из файла nib или создана программно в методе loadView. Обычно вы переопределяете этот метод для выполнения дополнительной инициализации в представлениях, загружаемых из файлов nib.

Методы ViewDidAppear и ViewWillAppear как они звучат для вас, называются каждый раз, когда вид появляется на экране.

Это изображение (от компании Apple документации) показывает действительные состояния переходов между различными точки зрения «воли» и «сделали» методы обратного вызова

enter image description here

+0

спасибо, что помогли мне. –

+0

@sulabhqg Добро пожаловать :) –

3

Всякий раз, когда Вы нажимаете ViewController, это будет вызывать viewDidLoad то viewWillAppear и last viewDidAppear. Но если вы вернетесь к viewController, то вызовет только viewWillAppear и viewDidAppear.

View будет называть эти два (viewWillAppear & viewDidAppear) каждый раз, когда это ViewController показывает на любых условиях

я. На push-viewDidLoad после него viewWillAppear & viewDidAppear.

ii. На задней панели или поп - No viewDidLoad будет вызывать, Только viewWillAppear & viewDidAppear.

iii. При включенном состоянии - No viewDidLoad вызовет, Только viewWillAppear & viewDidAppear.

+0

спасибо, что помогли мне. –

+0

@sulabhqg, пожалуйста, поддержите меня –