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

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

Разработчик

Ссылка платформы основы ссылка класса NSMetadataQuery

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

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

NSMetadataQuery

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


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


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


Swift

import Foundation

Objective C

@import Foundation;

Доступность


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

NSMetadataQuery класс инкапсулирует функциональность, предоставленную MDQuery непрозрачный тип для запросов метаданных Центра внимания.

NSMetadataQuery объекты обеспечивают результаты запроса метаданных несколькими способами:

  • Как отдельные значения атрибута для требуемых атрибутов.

  • Как оценивают списки, содержащие отличные значения для данных атрибутов в результатах запроса.

  • В результате выстройте прокси, содержа все результаты запроса. Это подходит для использования с привязкой Какао.

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

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

По умолчанию получатель не имеет никакого ограничения на свой поисковый объем. Используйте searchScopes свойство для настройки.

По умолчанию уведомление об обновленных результатах происходит в 1,0 секунды. Используйте notificationBatchingInterval свойство для настройки.

Необходимо установить предикат с predicate свойство прежде, чем запустить запрос.

  • searchScopes Свойство

    Массив, содержащий поисковые объемы.

    Объявление

    Swift

    var searchScopes: [AnyObject]

    Objective C

    @property(copy) NSArray *searchScopes

    Обсуждение

    Этот массив может содержать NSURL или NSString объекты, представляющие каталоги файловой системы или поисковые объемы для запроса. Для списка допустимых поисковых объемов посмотрите Объемы Поиска Запроса Метаданных. Пустой массив указывает, что нет никакого ограничения на то, где ищет запрос.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • predicate Свойство

    Предикат раньше фильтровал результаты запроса.

    Объявление

    Swift

    @NSCopying var predicate: NSPredicate?

    Objective C

    @property(copy) NSPredicate *predicate

    Обсуждение

    Установка этого свойства, в то время как запрос работает, останавливает запрос и отбрасывает текущие результаты. Получатель сразу запускает новый запрос.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • sortDescriptors Свойство

    Массив объектов дескриптора вида.

    Объявление

    Swift

    var sortDescriptors: [AnyObject]

    Objective C

    @property(copy) NSArray *sortDescriptors

    Обсуждение

    Установка этого свойства, в то время как запрос работает, останавливает запрос и отбрасывает текущие результаты. Получатель сразу запускает новый запрос.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • valueListAttributes Свойство

    Массив атрибутов, значения которых собраны запросом.

    Объявление

    Swift

    var valueListAttributes: [AnyObject]

    Objective C

    @property(copy) NSArray *valueListAttributes

    Обсуждение

    Запрос собирает значения этих атрибутов в списки uniqued, которые могут использоваться для суммирования результатов запроса. Если attributes nil, запрос не генерирует списков значения. Обратите внимание на то, что набор списка значения увеличивает использование CPU и значительно увеличивает использование памяти NSMetadataQuery объект.

    Установка этого свойства, в то время как запрос работает, останавливает запрос и отбрасывает текущие результаты. Получатель сразу запускает новый запрос.

    Для списка допустимых атрибутов посмотрите Ключи Атрибута и Ключи «Облачного» хранилища в Ссылке класса NSMetadataItem.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    valueLists

  • groupingAttributes Свойство

    Массив группировки атрибутов. (только для чтения)

    Объявление

    Swift

    var groupingAttributes: [AnyObject]?

    Objective C

    @property(copy) NSArray *groupingAttributes

    Обсуждение

    Установка этого свойства, в то время как запрос работает, останавливает запрос и отбрасывает текущие результаты. Получатель сразу запускает новый запрос.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • notificationBatchingInterval Свойство

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

    Объявление

    Swift

    var notificationBatchingInterval: NSTimeInterval

    Objective C

    @property NSTimeInterval notificationBatchingInterval

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • delegate Свойство

    Делегат запроса.

    Объявление

    Swift

    unowned(unsafe) var delegate: NSMetadataQueryDelegate?

    Objective C

    @property(assign) id< NSMetadataQueryDelegate > delegate

    Обсуждение

    Это свойство содержит объект, действующий как делегат запроса, или nil. Делегат должен реализовать NSMetadataQueryDelegate Protocol. Передача nil удалить текущего делегата.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • searchItems Свойство

    Массив объектов, определяющих объем запроса.

    Объявление

    Swift

    var searchItems: [AnyObject]?

    Objective C

    @property(copy) NSArray *searchItems

    Обсуждение

    Используйте этот метод для определения объема запроса метаданных к набору существующего URLs и/или элементов метаданных. Этот массив содержит NSURL и/или NSMetadataItem элементы, которые будут искаться.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • started Свойство

    Булево значение, указывающее, запустился ли запрос. (только для чтения)

    Объявление

    Swift

    var started: Bool { get }

    Objective C

    @property(readonly, getter=isStarted) BOOL started

    Обсуждение

    Это свойство содержит YEStrue когда получатель выполнился startQuery метод; иначе, NOfalse.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Попытки запустить запрос.

    Объявление

    Swift

    func startQuery() -> Bool

    Objective C

    - (BOOL)startQuery

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

    YEStrue когда успешный; иначе, NOfalse.

    Обсуждение

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

    Этот метод нужно вызвать на основном потоке. Например:

    Swift

    • var startQuery = false
    • let query = // Set up a query
    • dispatch_sync(dispatch_get_main_queue()) {
    • startQuery = query.startQuery()
    • }
    • if !startQuery {
    • // Handle the error
    • }

    Objective C

    • __block BOOL startedQuery = NO;
    • NSMetadataQuery * query = //Initialize and set up a query
    • dispatch_sync(dispatch_get_main_queue(), ^{
    • startedQuery = [query startQuery];
    • });
    • if (!startedQuery) {
    • // Handle the error
    • }

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • gathering Свойство

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

    Объявление

    Swift

    var gathering: Bool { get }

    Objective C

    @property(readonly, getter=isGathering) BOOL gathering

    Обсуждение

    Это свойство содержит YEStrue когда запрос находится в начальной сборочной фазе; иначе, NOfalse.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • stopped Свойство

    Булево значение, указывающее, остановился ли запрос. (только для чтения)

    Объявление

    Swift

    var stopped: Bool { get }

    Objective C

    @property(readonly, getter=isStopped) BOOL stopped

    Обсуждение

    Это свойство содержит YEStrue когда получатель остановил запрос; иначе, NOfalse.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Мешает текущему запросу получателя собрать дальнейшие результаты.

    Объявление

    Swift

    func stopQuery()

    Objective C

    - (void)stopQuery

    Обсуждение

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

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

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • results Свойство

    Массив, содержащий результаты запроса. (только для чтения)

    Объявление

    Swift

    var results: [AnyObject] { get }

    Objective C

    @property(readonly, copy) NSArray *results

    Обсуждение

    Массив является объектом прокси, прежде всего предназначающимся для использования с привязкой Какао. В то время как возможно скопировать массив прокси и получить «снимок» полных текущих результатов запроса, это обычно не рекомендуется вследствие производительности и проблем памяти. Для доступа к отдельным элементам матрицы результата используйте resultCount и resultAtIndex: методы.

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

    По умолчанию этот массив содержит NSMetadataItem объекты, представляя результаты запроса; однако, делегат запроса может заменить этими объектами с экземплярами различного класса.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    groupedResults

  • resultCount Свойство

    Число результатов, возвращенных запросом. (только для чтения)

    Объявление

    Swift

    var resultCount: Int { get }

    Objective C

    @property(readonly) NSUInteger resultCount

    Обсуждение

    По причинам производительности необходимо использовать этот метод вместо вызова count на results.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Возвращает результат запроса в определенном индексе.

    Объявление

    Swift

    func resultAtIndex(_ index: Int) -> AnyObject

    Objective C

    - (id)resultAtIndex:(NSUInteger)index

    Параметры

    index

    Индекс желаемого результата в массиве результата запроса.

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

    Результат запроса в позиции, указанной index. По умолчанию этот метод возвращается NSMetadataItem объект, представляющий требуемый результат; однако, делегат запроса может заменить этим объектом с экземпляром различного класса.

    Обсуждение

    По причинам производительности используйте этот метод при получении определенного результата, а не массива, возвращенного results.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Возвращает индекс объекта результата запроса в массиве результатов получателя.

    Объявление

    Swift

    func indexOfResult(_ result: AnyObject) -> Int

    Objective C

    - (NSUInteger)indexOfResult:(id)result

    Параметры

    result

    Объект результата запроса, запрашиваемый о.

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

    Индекс result в массиве результата запроса.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    – resultAtIndex:

  • groupedResults Свойство

    Массив, содержащий иерархические группы результатов запроса. (только для чтения)

    Объявление

    Swift

    var groupedResults: [AnyObject] { get }

    Objective C

    @property(readonly, copy) NSArray *groupedResults

    Обсуждение

    Эти группы основываются на атрибутах группировки получателя.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    groupingAttributes

  • Перечисляет текущий набор результатов с помощью данного блока.

    Объявление

    Swift

    func enumerateResultsUsingBlock(_ block: (AnyObject!, Int, UnsafeMutablePointer<ObjCBool>) -> Void)

    Objective C

    - (void)enumerateResultsUsingBlock:(void (^)(id result, NSUInteger idx, BOOL *stop))block

    Параметры

    block

    Блок для выполнения для каждого текущего результата.

    Обсуждение

    Этот метод отключает запрос в начале итерации и повторно включает его после завершения. Использовать enumerateResultsWithOptions:usingBlock: если Вы хотите использовать параллельную или обратную итерацию.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Перечисляет текущий набор результатов с помощью данных опций и блока.

    Объявление

    Swift

    func enumerateResultsWithOptions(_ opts: NSEnumerationOptions, usingBlock block: (AnyObject!, Int, UnsafeMutablePointer<ObjCBool>) -> Void)

    Objective C

    - (void)enumerateResultsWithOptions:(NSEnumerationOptions)opts usingBlock:(void (^)(id result, NSUInteger idx, BOOL *stop))block

    Параметры

    opts

    Опции для перечисления. Для полного списка опций посмотрите NSEnumerationOptions.

    block

    Блок для выполнения для каждого текущего результата.

    Обсуждение

    Этот метод отключает запрос в начале итерации и повторно включает его после завершения.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • valueLists Свойство

    Словарь, содержащий списки значения, сгенерирован запросом. (только для чтения)

    Объявление

    Swift

    var valueLists: [NSObject : AnyObject] { get }

    Objective C

    @property(readonly, copy) NSDictionary *valueLists

    Обсуждение

    Это свойство содержит словарь NSMetadataQueryAttributeValueTuple объекты.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

    См. также

    valueListAttributes

  • Возвращает значение для названия атрибута attrName в индексе в результатах, указанных idx.

    Объявление

    Swift

    func valueOfAttribute(_ attributeName: String, forResultAtIndex index: Int) -> AnyObject?

    Objective C

    - (id)valueOfAttribute:(NSString *)attributeName forResultAtIndex:(NSUInteger)index

    Параметры

    attributeName

    Атрибут объекта результата в index быть запрошенным о. Атрибут должен быть указан в valueListAttributes, как ключ сортировки в указанном дескрипторе вида, или поскольку один из группирующихся атрибутов указал набор для запроса.

    index

    Индекс желаемого эхо-сигнала в массиве результатов запроса.

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

    Значение для attributeName в объекте результата в index в массиве результата запроса.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Включает обновления к результатам запроса.

    Объявление

    Swift

    func enableUpdates()

    Objective C

    - (void)enableUpdates

    Обсуждение

    Если Вы не используете enumerateResultsUsingBlock: или enumerateResultsWithOptions:usingBlock:, необходимо вызвать этот метод после того, как Вы будете сделаны, выполняя итерации по результатам запроса.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Отключает обновления к результатам запроса.

    Объявление

    Swift

    func disableUpdates()

    Objective C

    - (void)disableUpdates

    Обсуждение

    Если Вы не используете enumerateResultsUsingBlock: или enumerateResultsWithOptions:usingBlock:, необходимо вызвать этот метод прежде, чем выполнить итерации по результатам запроса, которые могли измениться вследствие живых обновлений.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • operationQueue Свойство

    Очередь, на которой отправляются уведомления результата запроса.

    Объявление

    Swift

    var operationQueue: NSOperationQueue?

    Objective C

    @property(retain) NSOperationQueue *operationQueue

    Обсуждение

    Используйте это свойство для разъединения, обработка результатов потока раньше выполняла запрос. Это упрощает синхронизировать обработку результата запроса с другими связанными операциями — такими как обновление модели данных или пользовательского интерфейса — который Вы могли бы хотеть выполнить на основной очереди.

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

    Objective C

    @import Foundation;

    Swift

    import Foundation

    Доступность

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

  • Константы для предопределенных поисковых объемов, используемых searchScopes.

    Объявление

    Swift

    let NSMetadataQueryUbiquitousDocumentsScope: String let NSMetadataQueryUbiquitousDataScope: String let NSMetadataQueryAccessibleUbiquitousExternalDocumentsScope: String

    Objective C

    NSString * const NSMetadataQueryUbiquitousDocumentsScope; NSString * const NSMetadataQueryUbiquitousDataScope; NSString * const NSMetadataQueryAccessibleUbiquitousExternalDocumentsScope

    Константы

    • NSMetadataQueryUbiquitousDocumentsScope

      Ищите все файлы в Documents каталоги каталогов контейнера iCloud приложения.

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

    • NSMetadataQueryUbiquitousDataScope

      Ищите все файлы не в Documents каталоги каталогов контейнера iCloud приложения.

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

    • NSMetadataQueryAccessibleUbiquitousExternalDocumentsScope

      Поиск документов вне контейнера приложения. Этот поиск может определить местоположение документов iCloud, что пользователь ранее открыл использование контроллера представления средства выбора документа. Это позволяет Вашему доступу к приложениям документы снова, не требуя прямого взаимодействия с пользователем. Результат NSMetadataItemURLKey атрибуты возвращают ограниченный по объему безопасностью NSURLs. Для получения дополнительной информации о работе с ограниченным по объему безопасностью URLs посмотрите Ограниченный по объему безопасностью URLs в Ссылке класса NSURL.

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

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

    Объявление

    Swift

    let NSMetadataQueryResultContentRelevanceAttribute: String

    Objective C

    NSString * const NSMetadataQueryResultContentRelevanceAttribute;

    Константы

    • NSMetadataQueryResultContentRelevanceAttribute

      Ключ раньше получал NSNumber объект со значением с плавающей точкой между 0,0 и 1.0 включительно. Значение уместности указывает уместность содержания объекта результата. Уместность вычислена на основе значения самого результата, не на его отношении к другим результатам, возвращенным запросом. Если значение не вычислено, оно обрабатывается как атрибут на не существующем элементе.

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

  • Константы для ключей для получения набора измененных элементов из пользовательского информационного словаря уведомления. Обратите внимание на то, что при запросах повсеместного объема, эти ключи добавляются к пользовательскому информационному словарю только в OS X v10.10 и iOS 8.0 или позже. Для отслеживания изменений в более ранних версиях используйте KVO на запросе results свойство вместо этого.

    Объявление

    Swift

    let NSMetadataQueryUpdateAddedItemsKey: String let NSMetadataQueryUpdateChangedItemsKey: String let NSMetadataQueryUpdateRemovedItemsKey: String

    Objective C

    NSString * const NSMetadataQueryUpdateAddedItemsKey; NSString * const NSMetadataQueryUpdateChangedItemsKey; NSString * const NSMetadataQueryUpdateRemovedItemsKey;

    Константы

    • NSMetadataQueryUpdateAddedItemsKey

      Ключ для получения массива элементов добавил к результату запроса. По умолчанию этот массив содержит NSMetadataItem объекты, представляя результаты запроса; однако, делегат запроса может заменить этими объектами с экземплярами различного класса.

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

    • NSMetadataQueryUpdateChangedItemsKey

      Ключ для получения массива элементов, изменившихся в результате запроса. По умолчанию этот массив содержит NSMetadataItem объекты, представляя результаты запроса; однако, делегат запроса может заменить этими объектами с экземплярами различного класса.

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

    • NSMetadataQueryUpdateRemovedItemsKey

      Ключ для получения массива элементов удален из результата запроса. По умолчанию этот массив содержит NSMetadataItem объекты, представляя результаты запроса; однако, делегат запроса может заменить этими объектами с экземплярами различного класса.

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