CKFetchRecordZonesOperation
A CKFetchRecordZonesOperation
объект получает CKRecordZone
объекты (чей IDs Вы уже знаете) от iCloud. Используйте этот объект операции для выборки рекордных зон так, чтобы можно было установить их возможности.
Если Вы присваиваете блок завершения completionBlock
свойство объекта операции, блок завершения вызывают после того, как работа выполняет и возвращает свои результаты Вам. Вы можете использовать блок завершения для выполнения работы по дому обслуживания, связанной с работой, но не используете ее для обработки результатов самой работы. Любой блок завершения, который Вы указываете, должен быть подготовлен обработать отказ работы выполнить ее задачу, ли вследствие ошибки или явной отмены.
Наследование
-
NSObject
-
NSOperation
-
CKOperation
-
CKDatabaseOperation
-
CKFetchRecordZonesOperation
-
NSObject
-
NSOperation
-
CKOperation
-
CKDatabaseOperation
-
CKFetchRecordZonesOperation
Оператор импорта
Swift
import CloudKit
Objective C
@import CloudKit;
Доступность
Доступный в OS X v10.10 и позже.
-
Инициализирует и возвращает объект операции, сконфигурированный для выборки указанных рекордных зон.
Объявление
Swift
convenience init!(recordZoneIDs
zoneIDs
: [AnyObject]!)Objective C
- (instancetype)initWithRecordZoneIDs:(NSArray *)
zoneIDs
Параметры
zoneIDs
Массив
CKRecordZoneID
объекты, представляющие зоны, Вы хотите получить. Этот параметр используется для инициализации значения вrecordZoneIDs
свойство. Если Вы указываетеnil
, необходимо присвоить значениеrecordZoneIDs
свойство прежде, чем выполнить работу.Возвращаемое значение
Инициализированный объект операции.
Обсуждение
После инициализации работы присвойте блок
fetchRecordZonesCompletionBlock
свойство для обработки результатов.Оператор импорта
Objective C
@import CloudKit;
Swift
import CloudKit
Доступность
Доступный в OS X v10.10 и позже.
-
Возвращает объект операции, который может использоваться для выборки всех рекордных зон в текущей базе данных.
Объявление
Swift
class func fetchAllRecordZonesOperation() -> Self!
Objective C
+ (instancetype)fetchAllRecordZonesOperation
Возвращаемое значение
Недавно выделенный объект операции.
Обсуждение
После инициализации работы присвойте значение
fetchRecordZonesCompletionBlock
свойство для обработки результатов.Оператор импорта
Objective C
@import CloudKit;
Swift
import CloudKit
Доступность
Доступный в OS X v10.10 и позже.
-
recordZoneIDs recordZoneIDs
СвойствоIDs рекордных зон Вы хотите получить.
Объявление
Swift
var recordZoneIDs: [AnyObject]!
Objective C
@property(nonatomic, copy) NSArray *recordZoneIDs
Обсуждение
Используйте это свойство, чтобы просмотреть или изменить IDs рекордных зон, которые Вы хотите получить. Каждый элемент в массиве должен быть a
CKRecordZoneID
объект. Если Вы намереваетесь изменить значение этого свойства, сделайте так прежде, чем выполнить работу или представить объект операции очереди.Если Вы использовали
fetchAllRecordZonesOperation
метод для создания объекта операции содержание этого свойства проигнорировано, и значение по умолчанию установлено вnil
.Оператор импорта
Objective C
@import CloudKit;
Swift
import CloudKit
Доступность
Доступный в OS X v10.10 и позже.
-
Блок для выполнения с результатами выборки.
Объявление
Objective C
@property(nonatomic, copy) void (^fetchRecordZonesCompletionBlock)( NSDictionary *recordZonesByZoneID, NSError *operationError)
Обсуждение
Блок не возвращает значения и берет следующие параметры:
recordZonesByZoneID
Словарь, отображающий требуемый IDs на найденные объекты. Ключи в словаре
CKRecordZoneID
объекты, которые Вы запросили, и значения, являются соответствиемCKRecordZone
объекты.operationError
Ошибочный объект, содержащий информацию о проблеме, или
nil
если результаты получены успешно.Объект операции выполняет этот блок только один раз, и это - Ваш единственный шанс обработать результаты работы. Блок выполняется перед блоком завершения работы. Ваш блок должен быть способен к выполнению на фоновом потоке, таким образом, любые задачи, требующие доступа к основному потоку, должны быть перенаправлены соответственно.
Если Вы намереваетесь использовать этот блок для обработки результатов, установите его прежде, чем выполнить работу или представить объект операции очереди.
Этот блок сообщает об ошибке типа
CKErrorPartialFailure
когда это получает только некоторые рекордные зоны успешно.userInfo
словарь ошибки содержит aCKPartialErrorsByItemIDKey
ключ, значение которогоNSDictionary
объект. Ключами того словаря является IDs рекордных зон, не полученных, и соответствующие значения являются ошибочными объектами, содержащими информацию о том, что произошло.Оператор импорта
Objective C
@import CloudKit;
Swift
import CloudKit
Доступность
Доступный в OS X v10.10 и позже.