2015-10-20 5 views
0

Я разрабатываю приложение на основе документов, которое позволяет пользователям вставлять изображения, фильмы для создания композиций.Сохранение документа с использованием NSFileWrapper

При сохранении документа я создаю каталогFileWrapper, в который я помещаю xml-представление моего проекта, и один файл для каждого изображения/фильмов с использованием исходного пути (если документ еще не сохранен) или его относительный путь внутри пакет.

После того, как он будет сохранен, пользователи могут переместить документ в другое место/mac и все еще иметь доступ к их контенту.

Если пользователь выполняет операцию «SaveAsOperation» и сохраняет его в том же месте, документ сначала удаляется, а затем я должен его воссоздать. Проблема в том, что я не могу воссоздать файловые машины с использованием относительного пути, так как сам документ уже удален.

Есть ли способ предотвратить это? Каков правильный способ сохранить существующие файлы в пакетах?

+0

Какой метод NSDocument вы переопределить? – Willeke

+0

-fileWrapperOfType: error: – vtruant

+0

-readFromFileWrapper: ofType: error: – vtruant

ответ

0

Способ сделать это:

в .h

  • создать экземпляр уаг NSFileWrapper.

В INIT:

  • создать пустой directoryFileWrapper.

Каждый раз, когда вы хотите, чтобы добавить файл в обертке:

  • добавить этот файл внутри directoryFileWrapper

В -readFromFileWrapper: (NSFileWrapper *) inFileWrapper OfType: ошибка:

  • сделать «inFileWrapper» вашим файломWrapper (не забудьте выпустить предыдущий и сохранить новый)

В -fileWrapperOfType: ошибка:

  • возвращение вы fileWrapper.

Если вы хотите использовать NSFileWrapper, эта ссылка может оказаться полезным https://www.cocoanetics.com/2012/09/back-on-mac-os-x-tutorial-for-ios-developers/ и GitHub репо https://github.com/Cocoanetics/Examples

 Смежные вопросы

  • Нет связанных вопросов^_^