инициализация памяти и загрузка вида и порядок выполнения события

#iphone #ipad #sdk #viewdidload

#iPhone #iPad #sdk #загрузка viewdid

Вопрос:

Я пытаюсь загрузить список ресурсов, используя ALAssetsLibrary и enumerateGroupsWithTypes. Я заполняю NSMutableArrary загруженными ресурсами, чтобы использовать его позже, например, случайным образом изменять фон представления.

Я попытался предварительно загрузить этот массив с ресурсами в методе viewDidLoad и обнаружил, что он обрабатывается только ПОСЛЕ загрузки представления. если я введу инструкцию NSLog после вызова метода load, журнал будет напечатан, но массив не будет инициализирован, пока представление не будет полностью загружено.

Вопрос в том, когда я должен инициализировать свой массив?

Спасибо!

Ответ №1:

viewDidLoad Метод выполняет именно то, что он предлагает — он вызывается после загрузки представления. Никаких сюрпризов. Вы могли бы рассмотреть возможность загрузки с помощью initWithFrame: и / или initWithCoder: методов, в зависимости от того, какой из них имеет отношение к вам.

В вашем вопросе мало что говорится о том, почему вы хотите что-то загрузить этим методом. Что плохого в том, чтобы загрузить это, скажем, в viewDidLoad метод и использовать массив для настройки представления до того, как представление появится? Я понятия не имею, насколько велика ваша загрузка. Но угадайте что — есть даже удобный viewWillAppear: метод …!