UIActivityItemProvider
Наследование
-
NSObject -
NSOperation -
UIActivityItemProvider
-
NSObject -
NSOperation -
UIActivityItemProvider
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSObjectProtocol -
Печатаемый -
UIActivityItemSource -
NSObject -
UIActivityItemSource
Оператор импорта
Swift
import UIKit
Objective C
@import UIKit;
Доступность
Доступный в iOS 6.0 и позже.
A UIActivityItemProvider объект является прокси для данных, переданных контроллеру представления действия. Можно использовать объект провайдера в ситуациях, где Вы хотите сделать доступные данные для использования действием, но Вы хотите задержать предоставление, что данные, пока это не фактически необходимо. Например, Вы могли бы использовать объект провайдера представлять большой видеофайл, который должен быть обработан, прежде чем это сможет быть совместно использовано к учетной записи в социальной сети пользователя.
Когда Вы инициализируете a UIActivityViewController объект, можно передать объект провайдера в дополнение к любым другим объектам данных. Когда пользователь выбирает действие, контроллер представления действия добавляет Ваш объект провайдера (который является также объектом операции) очереди работы так, чтобы это могло начать собирать или обрабатывать необходимые данные.
Разделение на подклассы примечаний
Необходимо разделить на подклассы UIActivityItemProvider и реализация item метод, который вызывают для генерации данных элемента. Вы реализуете этот метод вместо нормального main метод Вы реализовали бы для объекта операции. ( main вызовы метода item метод, когда выполняется объект операции.) Ваша реализация item метод должен выполнить, любая работа необходима, чтобы создать и возвратить данные.
-
Инициализирует и возвращает объект провайдера с указанными данными заполнителя.
Объявление
Swift
init(placeholderItemplaceholderItem: AnyObject)Objective C
- (instancetype)initWithPlaceholderItem:(id)placeholderItemПараметры
placeholderItemОбъект, который может помочь для фактического объекта, который Вы планируете создать. Содержание объекта может быть пустым, но класс объекта должен соответствовать класс объекта, который Вы планируете обеспечить позже.
Возвращаемое значение
Инициализированный объект провайдера.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
Генерирует и возвращает фактический переносящий данные объект.
Объявление
Swift
func item() -> AnyObject!Objective C
- (id)itemОбсуждение
Когда фактический переносящий данные объект требуется, этот метод вызывает инфраструктура объекта провайдера. Подклассы должны переопределить этот метод и использовать его для выполнения независимо от того, что работа требуется, чтобы создавать объект и возвращать его. Вы реализуете этот метод вместо нормального
mainметод Вы реализовали бы для объектов операции. Этот метод вызывают на вторичном потоке Вашего приложения.Система не обеспечивает встроенного индикатора хода выполнения, поэтому если генерация элемента может занять много времени, необходимо запланировать обеспечение обратной связи в приложении сами.
Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
placeholderItemСвойствоОбъект местозаполнителя Вы указали во время инициализации. (только для чтения)
Объявление
Swift
var placeholderItem: AnyObject! { get }Objective C
@property(nonatomic, retain, readonly) id placeholderItemОператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
-
activityTypeСвойствоТип объекта действия, ожидающего данные. (только для чтения)
Объявление
Swift
var activityType: String? { get }Objective C
@property(nonatomic, readonly) NSString *activityTypeОбсуждение
Значение этого свойства
nilпока пользователь не выбирает действие. В то время значение установлено, и объект провайдера представлен очереди для выполнения. Таким образом необходимо получить доступ к этому значению только после объектаitemметод вызывают.Оператор импорта
Objective C
@import UIKit;Swift
import UIKitДоступность
Доступный в iOS 6.0 и позже.
