Spec-Zone .ru
спецификации, руководства, описания, API

Библиотека Разработчика iOS

Разработчик

Руководство по программированию расширения приложения

PDF
На этой странице

Фото редактирование

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

Поймите как фотография, редактируя дополнительные работы с фотографиями

Для поддержки непротиворечивого опыта редактирования фотографии сохраняют многократные версии каждых данных изображения актива носителей или видеоданных, в дополнение к данным корректировки, описывающим прошлые редактирования, сделанные к активу. Для каждого актива фотографии хранят исходную версию, текущая версия (который включает новые корректировки), и набор поправок, примененных к исходной версии для создания текущей версии.

Когда пользователь выбирает расширение Photo Editing, фотографии спрашивает расширение, если оно может считать данные корректировки. Если расширение приложения поддерживает данные корректировки, фотографии обеспечивает исходную версию актива, как введено к сеансу редактирования. После того, как расширение считывает данные корректировки и восстанавливает прошлые редактирования, это может позволить пользователям изменяться или возвращаться мимо редактирований или добавлять новые редактирования. Например, если данные корректировки описывают фильтры, применился к фотографии, расширение повторно применяет те фильтры к исходному активу и может позволить пользователям изменить параметры фильтра, добавить новые фильтры или демонтировать фильтры.

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

Когда пользователь заканчивает использовать фотографию, Редактируя расширение, расширение возвращает отредактированный актив и данные корректировки.

пользователи iOS получают доступ к фотографии, Редактируя расширения в фото приложении. Когда пользователь выбирает Ваше расширение, выведите на экран представление, обеспечивающее пользовательский интерфейс редактирования. Для представления этого представления используйте контроллер представления, принимающий PHContentEditingController протокол.

Используйте фото шаблон редактирования XCode

Фото Шаблон редактирования XCode обеспечивает заголовок по умолчанию и файлы реализации для основного класса контроллера представления (вызванный PhotoEditingViewController), Info.plist файл, и интерфейсный файл (т.е. файл раскадровки).

По умолчанию фото Шаблон редактирования предоставляет следующий Info.plist ключи и значения:

  • <key>NSExtension</key>
  • <dict>
  • <key>NSExtensionAttributes</key>
  • <dict>
  • <key>PHSupportedMediaTypes</key>
  • <array>
  • <string>Image</string>
  • </array>
  • </dict>
  • <key>NSExtensionMainStoryboard</key>
  • <string>MainInterface</string>
  • <key>NSExtensionPointIdentifier</key>
  • <string>com.apple.photo-editing</string>
  • </dict>

В частности удостоверьтесь что PHSupportedMediaTypes массив указывает типы активов носителей, которые может отредактировать Ваше расширение приложения. Значение по умолчанию Image, но можно также использовать Video.

Разработайте UI

Фото отображения приложения фотография, Редактируя расширение в панели навигации, таким образом, необходимо избежать разрабатывать основанный на панели навигации UI для расширения.

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

Когда фотография, Редактируя расширение позволяет пользователям предварительно просмотреть результаты своих редактирований, лучше. При предоставлении пользователям предварительный просмотр, в то время как они все еще используют расширение, означает, что они могут получить эффект, который они хотят, неоднократно не выходя и повторно входя в расширение.

Поскольку пользователи, вероятно, проведут время, редактируя фотографию или фильм в Вашем расширении приложения, Вы не хотите, чтобы они потеряли свою работу, если они случайно выбирают Cancel. Улучшить пользовательский опыт, убедиться реализовать shouldShowCancelConfirmation метод в Вашем контроллере представления, возвращаясь YEStrue если там не сохраняются изменения. Когда возвращается этот метод YEStrue, Фотографии выводят на экран подтверждение UI так, чтобы пользователи могли подтвердить, хотят ли они действительно отменить свои изменения.

Обработка ограничений памяти

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

Тестирование фотографии, редактируя расширение

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

Для приобретения знаний об отладке расширений приложения в целом посмотрите Отладку, Профиль и Тест Расширение Приложения.