NSItemProvider
NSItemProvider класс определяет объект, представляющий высокоуровневую абстракцию для объектов данных, которые могут быть найдены в NSExtensionItem объект attachments свойство, такое как текст, изображения и URLs. Расширение использует NSItemProvider возразите, чтобы запросить приложение узла для доступных форматов элемента, элементов загрузки определенных типов, и поддерживать эффективный предварительный просмотр элемента.
Провайдер элемента использует значения универсального идентификатора типа (UTI) для представления типов изделия. Можно определить пользовательскую обработку загрузки для реализации загрузки типов конкретного изделия.
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCopying -
NSObjectProtocol -
Печатаемый -
NSCopying -
NSObject
Оператор импорта
Swift
import Foundation
Objective C
@import Foundation;
Доступность
Доступный в OS X v10.10 и позже.
-
Возвращает провайдера элемента, инициализированного с содержанием указанного файла и надлежащего обработчика загрузки.
Объявление
Swift
convenience init?(contentsOfURLfileURL: NSURL!)Objective C
- (instancetype)initWithContentsOfURL:(NSURL *)fileURLПараметры
fileURLURL файла в присоединяемом свойстве дополнительного объекта.
Возвращаемое значение
Инициализированный провайдер элемента, включающий обработчик загрузки для идентификатора типа, полученного из указанного файла, или
nilесли произошла ошибка.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
init (item:typeIdentifier:) - initWithItem:typeIdentifier:Определяемый инициализаторВозвращает провайдера элемента, инициализированного с обработчиком загрузки, подходящим для указанного элемента.
Объявление
Swift
init(itemitem: NSSecureCoding?, typeIdentifiertypeIdentifier: String?)Objective C
- (instancetype)initWithItem:(id<NSSecureCoding>)itemtypeIdentifier:(NSString *)typeIdentifierПараметры
itemNSItemProviderобъект илиnil.typeIdentifierСтрока, представляющая UTI элемента.
Возвращаемое значение
Инициализированный провайдер элемента с единственным обработчиком загрузки для указанного элемента.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
Возвращает булево значение, указывающее, имеет ли провайдер элемента по крайней мере один элемент, соответствующий указанному типу.
Объявление
Swift
func hasItemConformingToTypeIdentifier(_typeIdentifier: String) -> BoolObjective C
- (BOOL)hasItemConformingToTypeIdentifier:(NSString *)typeIdentifierПараметры
typeIdentifierUTI, указывающий желаемый тип изделия.
Возвращаемое значение
YEStrueесли провайдер элемента имеет по крайней мере один элемент, соответствующий указанному типу, илиNOfalseэто не делает.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
loadItemForTypeIdentifier (_: options:completionHandler:) - loadItemForTypeIdentifier:options:completionHandler:Загружает элемент, тип которого наиболее близко соответствует указанный идентификатор типа.
Объявление
Swift
func loadItemForTypeIdentifier(_typeIdentifier: String, optionsoptions: [NSObject : AnyObject]?, completionHandlercompletionHandler: NSItemProviderCompletionHandler?)Objective C
- (void)loadItemForTypeIdentifier:(NSString *)typeIdentifieroptions:(NSDictionary *)optionscompletionHandler:(NSItemProviderCompletionHandler)completionHandlerПараметры
typeIdentifierСтрока, представляющая желаемый UTI.
optionsСловарь ключей и значений, предоставляющих информацию об элементе, таком как размер изображения. (См.
NSItemProviderPreferredImageSizeKeyдля ключа можно использовать.)completionHandlerБлок обработчика завершения, использующий форму, указанную
NSItemProviderCompletionHandler.Обсуждение
Расширение может указать ожидаемый класс для значения элемента в блоке обработчика завершения. Ошибка возвращается в блоке завершения
errorпараметр, если класс значения возвращенного элемента не соответствует указанный класс. Провайдер элемента может выполнить простые преобразования типов для элемента, указанного в блоке, такой как отNSURLкNSDataилиNSFileWrapper, или отNSDataкUIImage(в iOS) илиNSImage(в OS X).Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
Устанавливает блок обработчика загрузки для использования для указанного идентификатора типа.
Объявление
Swift
func registerItemForTypeIdentifier(_typeIdentifier: String, loadHandlerloadHandler: NSItemProviderLoadHandler)Objective C
- (void)registerItemForTypeIdentifier:(NSString *)typeIdentifierloadHandler:(NSItemProviderLoadHandler)loadHandlerПараметры
typeIdentifierСтрока, представляющая желаемый UTI.
loadHandlerБлок обработчика завершения, использующий форму, указанную
NSItemProviderLoadHandler.Обсуждение
В обработчике загрузки, который Вы указываете, вызывают при необходимости
loadItemForTypeIdentifier:options:completionHandler:. Ваша реализацияloadItemForTypeIdentifier:options:completionHandler:должен вызвать обработчик завершения, который Вы указываете в этом методе для завершения процесса загрузки.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
Возвращает массив зарегистрированных идентификаторов типов для этого провайдера элемента. (только для чтения)
Объявление
Swift
var registeredTypeIdentifiers: [AnyObject] { get }Objective C
@property(copy, readonly, atomic) NSArray *registeredTypeIdentifiersОператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
loadPreviewImageWithOptions (_: completionHandler:) - loadPreviewImageWithOptions:completionHandler:Загружает изображение предварительного просмотра для указанного элемента.
Объявление
Swift
func loadPreviewImageWithOptions(_options: [NSObject : AnyObject]!, completionHandlercompletionHandler: NSItemProviderCompletionHandler!)Objective C
- (void)loadPreviewImageWithOptions:(NSDictionary *)optionscompletionHandler:(NSItemProviderCompletionHandler)completionHandlerПараметры
optionsСловарь ключей и значений, предоставляющих информацию об элементе, таком как размер изображения. (См.
NSItemProviderPreferredImageSizeKeyдля ключа можно использовать.)completionHandlerБлок обработчика завершения, использующий форму, указанную
NSItemProviderCompletionHandler.Обсуждение
В некоторых случаях изображение предварительного просмотра может быть загружено обработчик на основе Беглого взгляда. Провайдер элемента может выполнить простые преобразования типов для элемента specifed в блоке, такой как от
NSURLкNSDataилиNSFileWrapper, или отNSDataкUIImage(в iOS) илиNSImage(в OS X).Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
previewImageHandler previewImageHandlerСвойствоПользовательский предварительный просмотр отображает блок обработчика для использования с этим провайдером элемента.
Объявление
Swift
var previewImageHandler: NSItemProviderLoadHandler?Objective C
@property(copy, atomic) NSItemProviderLoadHandler previewImageHandlerОператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
Типы данных
-
Блок, который вызовут, когда провайдер элемента загружает элемент из присоединяемого свойства дополнительного объекта.
Объявление
Swift
typealias NSItemProviderCompletionHandler = (NSSecureCoding!, NSError!) -> VoidObjective C
typedef void (^NSItemProviderCompletionHandler)(id <NSSecureCoding> item, NSError *error);Обсуждение
Для завершения загружающегося запроса блок этой формы вызывают, чтобы дать Вам шанс проверить тип элемента и обработать его соответственно. Параметры этого блока следующие:
itemЗагружаемый элемент.
errorСодержит указатель на ошибочный объект (если таковые имеются), указывая, почему не загружался элемент.
Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
Блок, который вызовут, когда элемент определенного типа загружается из присоединяемого свойства дополнительного объекта.
Объявление
Swift
typealias NSItemProviderLoadHandler = (NSItemProviderCompletionHandler!, AnyClass!, [NSObject : AnyObject]!) -> VoidObjective C
typedef void (^NSItemProviderLoadHandler)(NSItemProviderCompletionHandler completionHandler, Class expectedValueClass, NSDictionary *options);Обсуждение
Специфичным для типа обработчиком загрузки вызывают
loadItemForTypeIdentifier:options:completionHandler:. Обработчик загрузки, как ожидают, вызовет указанный обработчик завершения для завершения загрузки.completionHandlerОбработчик завершения для вызова для завершения загрузки элемента.
expectedValueClassОжидаемый класс загружаемого элемента.
optionsСловарь, предоставляющий больше информации об элементе, таком как размер в пикселях изображения. Посмотрите
NSItemProviderPreferredImageSizeKeyдля ключа можно использовать.Оператор импорта
Objective C
@import Foundation;Swift
import FoundationДоступность
Доступный в OS X v10.10 и позже.
-
Ключ, используемый в
optionsсловарь для указания информации об элементе.Объявление
Swift
let NSItemProviderPreferredImageSizeKey: NSString!Objective C
NSString * const NSItemProviderPreferredImageSizeKey;Константы
-
NSItemProviderPreferredImageSizeKeyNSItemProviderPreferredImageSizeKeyКлюч, используемый в
optionsсловарьNSItemProviderCompletionHandlerуказать размер изображения (в пикселях).Доступный в OS X v10.10 и позже.
-
-
Ключи, используемые в элементах списка свойств, полученных из или отправленный в код JavaScript.
Объявление
Swift
let NSExtensionJavaScriptPreprocessingResultsKey: NSString!Objective C
NSString * const NSExtensionJavaScriptPreprocessingResultsKey;Константы
