Управление ходом загрузки в Objective-C - PullRequest
0 голосов
/ 13 мая 2011

Добрый вечер всем, У меня первый серьезный опыт работы с Objective-C, и я прошу у вас совет.

Я реализую делегат NSUrlConnetion и вызываю этот класс из основного viewController, например, имя myViewController.

Я хочу видеть прогресс загрузки в viewController, и я думаю сделать что-то вроде этого: в файле h: ... интерфейс myViewController, где протокол receiveDelegate содержит метод наподобие - (int) setProgressPercent, который возвращает процент загруженной части. В .m файле я вызываю NSUrlDelegate, передавая себя.

Затем в NSUrlConnection делегат: в .h файле: @property (неатомный, сохраняющий) идентификатор отца; и когда я получаю что-то: [папа setProgressPercent: newValue];

все в порядке?

1 Ответ

0 голосов
/ 13 мая 2011

Делегат NSURLConnection будет отправляться connection:didReceiveData: каждый раз, когда поступают данные.Предположительно вы будете накапливать эти данные в переменной экземпляра NSMutableData.Таким образом, вы можете получить размер NSMutableData, накопленный до настоящего времени, и сравнить его с полным размером загружаемого объекта и использовать это значение для установки чего-либо в вашем интерфейсе (предположительно, индикатор прогресса).

Однако,чтобы сделать это, вы должны заранее знать, насколько большим будет размер загружаемого объекта.Вы можете узнать это, проанализировав NSURLResponse, полученный connection:didReceiveResponse:.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...