Основные данные: Использование временного свойства для прогресса? - PullRequest
0 голосов
/ 12 февраля 2011

В настоящее время я создаю приложение для iOS, которое загружает файлы на сервер. Поскольку несколько загрузок могут быть поставлены в очередь и иметь прикрепленные метаданные, которые я хочу постоянно хранить, я использую базовые данные для моделирования и хранения загрузок. Я также использую NSFetchedResultsController для отображения всех загрузок в виде таблицы. Пока все хорошо.

Сейчас я внедряю индикатор прогресса, и поэтому я не уверен, что моя реализация действительно хорошая идея. Я добавил в свою модель свойство float, которое обновляется контроллером загрузки по мере загрузки. Затем я обновляю свой подкласс UITableViewCell с помощью NSFetchedResultsControllerDelegate, и это работает довольно хорошо. Однако на самом деле не имеет смысла сохранять это свойство постоянно, так как выгрузка не может быть возобновлена, если приложение будет прекращено. Я использую это свойство только для подключения моего контроллера загрузки и просмотра контроллера. Есть ли лучший способ сделать это без потери удобства NSFetchedResultsController?

1 Ответ

2 голосов
/ 12 февраля 2011

Если вы отметили свое свойство как Transient в редакторе моделей, это означает, что оно не будет сохранено в постоянном файле.

Свойство будет сбрасываться по умолчанию при каждой загрузке МО, хотя я не уверен в правилах, в какой момент они будут сброшены, если вы не сохраняете конкретные экземпляры МО

Этот парень,http://2pi.dk/tech/cocoa/transient_properties.html, кажется, знает.

...