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

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

Разработчик

Фото ссылка платформы ссылка класса PHAssetCollectionChangeRequest

Опции
Развертывание Target:

На этой странице
Язык:

PHAssetCollectionChangeRequest

Наследование


  • NSObject
  • PHAssetCollectionChangeRequest
  • NSObject
  • PHAssetCollectionChangeRequest

Соответствует


Оператор импорта


Swift

import Photos

Objective C

@import Photos;

Доступность


Доступный в iOS 8.0 и позже.

Вы создаете и используете PHAssetCollectionChangeRequest объекты в фото блоке изменения библиотеки для создания удалите или измените PHAssetCollection объекты.

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

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

Запрос на изменение для создания или изменения набора актива работает как непостоянная версия объекта коллекции актива. Используйте свойства запроса на изменение и методы экземпляра запросить изменения в самом наборе актива. Например, следующий код удаляет актив из альбома:

  • [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{
  • PHAssetCollectionChangeRequest *request = [PHAssetCollectionChangeRequest
  • changeRequestForAssetCollection:self.myAlbum
  • assets:self.albumAssetsFetchResult];
  • [request removeAssets:@[asset]];
  • } completionHandler:^(BOOL success, NSError *error) {
  • NSLog(@"Finished removing asset from the album. %@", (success ? @"Success" : error));
  • }];

После фото выполнений блок изменения и вызовы Ваш обработчик завершения, состояние набора актива отражает изменения, которые Вы запросили в блоке.

Если Вы создаете или используете объект запроса на изменение вне фото блока изменения библиотеки, фотографии выдает исключение. Для получения дополнительной информации на блоках изменения, посмотрите Ссылку класса PHPhotoLibrary.

  • Создает запрос на добавление нового набора актива к фото библиотеке.

    Объявление

    Swift

    class func creationRequestForAssetCollectionWithTitle(_ image: String!) -> Self!

    Objective C

    + (instancetype)creationRequestForAssetCollectionWithTitle:(NSString *)image

    Параметры

    image

    Имя для нового набора актива.

    Возвращаемое значение

    Запрос создания набора актива.

    Обсуждение

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

    Чтобы добавить активы к недавно создаваемому набору актива или изменить его заголовок, используйте методы, перечисленные в Изменении Наборов Актива. Для ссылки на недавно создаваемый набор актива позже в том же блоке изменения или после, блок изменения завершается, используйте placeholderForCreatedAssetCollection свойство для получения объекта местозаполнителя.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Объект местозаполнителя для набора актива, который создает запрос на изменение. (только для чтения)

    Объявление

    Swift

    var placeholderForCreatedAssetCollection: PHObjectPlaceholder! { get }

    Objective C

    @property(nonatomic, strong, readonly) PHObjectPlaceholder *placeholderForCreatedAssetCollection

    Обсуждение

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

    • PHAssetChangeRequest *createAlbumRequest = [PHAssetCollectionChangeRequest creationRequestForAssetCollectionWithTitle:@"New Album"];
    • PHObjectPlaceholder *albumPlaceholder = createAlbumRequest.placeholderForCreatedAssetCollection;
    • PHCollectionListChangeRequest *folderChangeRequest =
    • [PHCollectionListChangeRequest changeRequestForCollectionList:folder];
    • [folderChangeRequest addChildCollections:@[ albumPlaceholder ]];

    Для получения дополнительной информации на блоках изменения, посмотрите Ссылку класса PHPhotoLibrary.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Запросы, что указанные наборы актива быть удаленным.

    Объявление

    Swift

    class func deleteAssetCollections(_ assetCollections: NSFastEnumeration!)

    Objective C

    + (void)deleteAssetCollections:(id<NSFastEnumeration>)assetCollections

    Параметры

    assetCollections

    Массив PHAssetCollection объекты, которые будут удалены.

    Обсуждение

    Вызовите этот метод в фото блоке изменения библиотеки для удаления наборов актива. Для получения дополнительной информации на блоках изменения, посмотрите Ссылку класса PHPhotoLibrary.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает запрос на изменение указанного набора актива.

    Объявление

    Swift

    convenience init!(forAssetCollection assetCollection: PHAssetCollection!)

    Objective C

    + (instancetype)changeRequestForAssetCollection:(PHAssetCollection *)assetCollection

    Параметры

    assetCollection

    Набор актива, который будет изменен.

    Возвращаемое значение

    Запрос на изменение набора актива.

    Обсуждение

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

    Используйте этот метод при изменении метаданных набора актива или при добавлении или удалении активов вне зависимости от их расположения. Для работы с индексами в списке задействованных активов используйте changeRequestForAssetCollection:assets: метод вместо этого.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Создает запрос на изменение указанного набора актива, с результатом выборки для отслеживания изменений.

    Объявление

    Swift

    convenience init!(forAssetCollection assetCollection: PHAssetCollection!, assets assets: PHFetchResult!)

    Objective C

    + (instancetype)changeRequestForAssetCollection:(PHAssetCollection *)assetCollection assets:(PHFetchResult *)assets

    Параметры

    assetCollection

    Набор актива, который будет изменен.

    assets

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

    Возвращаемое значение

    Запрос на изменение набора актива.

    Обсуждение

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

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

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • title Свойство

    Выведенное на экран имя набора актива.

    Объявление

    Swift

    var title: String!

    Objective C

    @property(nonatomic, strong, readwrite) NSString *title

    Обсуждение

    Установите это свойство для изменения заголовка набора актива.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Добавьте указанные активы к набору актива.

    Объявление

    Swift

    func addAssets(_ assets: NSFastEnumeration!)

    Objective C

    - (void)addAssets:(id<NSFastEnumeration>)assets

    Параметры

    assets

    Массив PHAsset объекты, которые будут добавлены к набору актива.

    Обсуждение

    Если Вы создали запрос на изменение со снимком содержания набора актива с помощью changeRequestForAssetCollection:assets: метод, фотографии вставляют новые активы после существующих активов в наборе. Иначе, расположение новых активов относительно других в наборе не определено.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Вставляет указанные активы в набор в указанных индексах.

    Объявление

    Swift

    func insertAssets(_ assets: NSFastEnumeration!, atIndexes indexes: NSIndexSet!)

    Objective C

    - (void)insertAssets:(id<NSFastEnumeration>)assets atIndexes:(NSIndexSet *)indexes

    Параметры

    assets

    Массив PHAsset объекты, которые будут вставлены в набор актива.

    indexes

    Индексы, в которых должны быть вставлены активы. Количество расположений в этом индексном наборе должно равняться количеству активов.

    Обсуждение

    Чтобы гарантировать, что индекс установил Вас, указывают, допустимо, даже если набор актива изменился, так как Вы выбрали его, создайте запрос на изменение со снимком содержания набора актива с помощью changeRequestForAssetCollection:assets: метод прежде, чем вставить активы.

    Для детального обсуждения того, как индекс установил Вас, укажите карты к вставкам в списке активов, посмотрите подобное NSMutableArray метод insertObjects:atIndexes:.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Удаляет указанные активы из набора актива.

    Объявление

    Swift

    func removeAssets(_ assets: NSFastEnumeration!)

    Objective C

    - (void)removeAssets:(id<NSFastEnumeration>)assets

    Параметры

    assets

    Массив PHAsset объекты, которые будут удалены из набора актива.

    Обсуждение

    Этот метод удаляет активы из набора на основе их идентификационных данных (определенный localIdentifier свойство каждого актива). Для удаления объектов в указанных индексах используйте removeAssetsAtIndexes: метод.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Удаляет активы в указанных индексах от набора актива.

    Объявление

    Swift

    func removeAssetsAtIndexes(_ indexes: NSIndexSet!)

    Objective C

    - (void)removeAssetsAtIndexes:(NSIndexSet *)indexes

    Параметры

    indexes

    Индексы активов, которые будут удалены из набора актива.

    Обсуждение

    Чтобы гарантировать, что индекс установил Вас, указывают, допустимо, даже если набор актива изменился, так как Вы выбрали его, создайте запрос на изменение со снимком содержания набора актива с помощью changeRequestForAssetCollection:assets: метод прежде, чем удалить активы. Для удаления объектов на основе их идентификационных данных (вне зависимости от их индексов в наборе) используйте removeAssets: метод.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Заменяет активы в указанных индексах в наборе актива с указанными активами.

    Объявление

    Swift

    func replaceAssetsAtIndexes(_ indexes: NSIndexSet!, withAssets assets: NSFastEnumeration!)

    Objective C

    - (void)replaceAssetsAtIndexes:(NSIndexSet *)indexes withAssets:(id<NSFastEnumeration>)assets

    Параметры

    indexes

    Индексы активов, которые будут заменены в наборе актива.

    assets

    Массив PHAsset объекты, которые будут вставлены в (или перемещены в) набор актива.

    Обсуждение

    Чтобы гарантировать, что индекс установил Вас, указывают, допустимо, даже если набор актива изменился, так как Вы выбрали его, создайте запрос на изменение со снимком содержания набора актива с помощью changeRequestForAssetCollection:assets: метод прежде, чем перестроить активы.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.

  • Перемещает активы в указанные индексы в наборе актива к новому индексу.

    Объявление

    Swift

    func moveAssetsAtIndexes(_ fromIndexes: NSIndexSet!, toIndex toIndex: Int)

    Objective C

    - (void)moveAssetsAtIndexes:(NSIndexSet *)fromIndexes toIndex:(NSUInteger)toIndex

    Параметры

    fromIndexes

    Индексы активов, которые будут перемещены в набор актива.

    toIndex

    Индекс, в котором можно поместить перемещенные активы относительно упорядочивания набора после удаления элементов в indexes.

    Обсуждение

    Когда Вы вызываете этот метод, фотографии сначала удаляет элементы в indexes параметр от набора, и затем вставляет их в расположении, указанном toIndex параметр.

    Чтобы гарантировать, что индекс установил Вас, указывают, допустимо, даже если набор актива изменился, так как Вы выбрали его, создайте запрос на изменение со снимком содержания набора актива с помощью changeRequestForAssetCollection:assets: метод прежде, чем перестроить активы.

    Оператор импорта

    Objective C

    @import Photos;

    Swift

    import Photos

    Доступность

    Доступный в iOS 8.0 и позже.