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

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

Разработчик

Ссылка платформы MediaPlayer ссылка класса MPMediaQuery

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

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

MPMediaQuery

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


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


Swift

import MediaPlayer

Objective C

@import MediaPlayer;

Доступность


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

Мультимедийный запрос указывает ряд элементов носителей (экземпляры MPMediaItem) от библиотеки iPod посредством фильтра и группирующегося типа. Отфильтруйте и группирующий тип являются оба дополнительными; неполный запрос соответствует всю библиотеку.

Запрос имеет самое большее один тип группировки. Фильтр запроса может состоять из любого числа предикатов свойства носителей. Вы создаете методы использования фильтров, описанные в Ссылке класса MPMediaPropertyPredicate, на основе ключей свойства, описанных в Ссылке класса MPMediaItem.

После создания и конфигурирования запроса, Вы используете его для получения элементов носителей или наборов элементов носителей. Наборы описаны в Ссылке класса MPMediaItemCollection. Можно также использовать запрос для получения массива MPMediaQuerySection экземпляры, полезные для отображения результатов запроса в пользовательском интерфейсе Вашего приложения. Посмотрите itemSections и collectionSections свойства.

Этот класс включает много конструкторов удобства, что каждый применяет группирующийся тип и, в большинстве случаев, соответствует подмножество библиотеки iPod. Таблица 1 суммирует функции этих конструкторов. Посмотрите Ссылку класса MPMediaItem для описаний записей в столбце Filter. Посмотрите, что Набор элементов Носителей Группирует Ключи для описаний записей в Группирующемся столбце типа.

Табличные 1Convenience конструкторы от класса MPMediaQuery

Имя конструктора

Соответствует всю библиотеку iPod

Фильтр

Группировка типа

albumsQuery

-

MPMediaTypeMusic

MPMediaGroupingAlbum

artistsQuery

-

MPMediaTypeMusic

MPMediaGroupingArtist

audiobooksQuery

-

MPMediaTypeAudioBook

MPMediaGroupingTitle

compilationsQuery

-

MPMediaTypeAny с MPMediaItemPropertyIsCompilation

MPMediaGroupingAlbum

composersQuery

Да

MPMediaTypeAny

MPMediaGroupingComposer

genresQuery

Да

MPMediaTypeAny

MPMediaGroupingGenre

playlistsQuery

Да

MPMediaTypeAny

MPMediaGroupingPlaylist

podcastsQuery

-

MPMediaTypePodcast

MPMediaGroupingPodcastTitle

songsQuery

-

MPMediaTypeMusic

MPMediaGroupingTitle

Методы класса в этом разделе создают запросы, которые можно использовать непосредственно или изменить, как описано в Конфигурировании Мультимедийных запросов. Для каждого метода класса, запрос groupingType свойство установлено автоматически согласно имени метода. Например, albumsQuery метод присваивает группирующийся тип MPMediaGroupingAlbum. Группирующийся тип указывает природу наборов элементов носителей, которые можно тогда получить от запроса. В то время как другие соответствуют подмножество, как описано в разделах Обсуждения для каждого метода, некоторые методы класса соответствуют всю библиотеку iPod.

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

    Объявление

    Swift

    class func albumsQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)albumsQuery

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

    Мультимедийный запрос, соответствующий элементы носителей типа MPMediaTypeMusic и имеет группирующийся тип MPMediaGroupingAlbum.

    Обсуждение

    Элемент носителей может иметь больше чем один тип среды; например, элемент мог иметь типы «музыка» и «подкаст». albumsQuery запросите соответствует все MPMediaTypeMusic элементы, являются ли они также другие типы среды.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

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

    Объявление

    Swift

    class func artistsQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)artistsQuery

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

    Мультимедийный запрос, соответствующий элементы носителей типа MPMediaTypeMusic и имеет группирующийся тип MPMediaGroupingArtist.

    Обсуждение

    Элемент носителей может иметь больше чем один тип среды; например, элемент мог иметь типы «музыка» и «подкаст». artistsQuery запросите соответствует все MPMediaTypeMusic элементы, являются ли они также другие типы среды.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

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

    Объявление

    Swift

    class func songsQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)songsQuery

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

    Мультимедийный запрос, соответствующий элементы носителей типа MPMediaTypeMusic и имеет группирующийся тип MPMediaGroupingTitle.

    Обсуждение

    Элемент носителей может иметь больше чем один тип среды; например, элемент мог иметь типы «музыка» и «подкаст». A songsQuery запросите соответствует все MPMediaTypeMusic элементы, являются ли они также другие типы среды.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

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

    Объявление

    Swift

    class func playlistsQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)playlistsQuery

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

    Мультимедийный запрос, соответствующий все элементы носителей и это имеет группирующийся тип MPMediaGroupingPlaylist.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

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

    Объявление

    Swift

    class func podcastsQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)podcastsQuery

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

    Мультимедийный запрос, соответствующий элементы носителей типа MPMediaTypePodcast и это имеет группирующийся тип MPMediaGroupingPodcastTitle.

    Обсуждение

    Элемент носителей может иметь больше чем один тип среды; например, элемент мог иметь типы «музыка» и «подкаст». A podcastsQuery запросите соответствует все MPMediaTypePodcast элементы, являются ли они также другие типы среды.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

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

    Объявление

    Swift

    class func audiobooksQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)audiobooksQuery

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

    Мультимедийный запрос, соответствующий элементы носителей типа MPMediaTypeAudioBook и это использует тип группировки значения по умолчанию MPMediaGroupingTitle.

    Обсуждение

    Элемент носителей может иметь больше чем один тип среды; например, элемент мог иметь типы «музыка» и «подкаст». audiobooksQuery запросите соответствует все MPMediaTypeAudioBook элементы, являются ли они также другие типы среды.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

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

    Объявление

    Swift

    class func compilationsQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)compilationsQuery

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

    Мультимедийный запрос, соответствующий любой элемент носителей, имеющий MPMediaItemPropertyIsCompilation свойство; возвращенный запрос имеет группирующийся тип MPMediaGroupingAlbum.

    Обсуждение

    Элемент носителей может иметь больше чем один тип среды; например, элемент мог иметь типы «музыка» и «подкаст». A compilationsQuery запросите соответствует все элементы носителей, имеющие MPMediaItemPropertyIsCompilation свойство, независимо от их типов среды.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

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

    Объявление

    Swift

    class func composersQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)composersQuery

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

    Мультимедийный запрос, соответствующий все элементы носителей и это имеет группирующийся тип MPMediaGroupingComposer.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

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

    Объявление

    Swift

    class func genresQuery() -> MPMediaQuery!

    Objective C

    + (MPMediaQuery *)genresQuery

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

    Мультимедийный запрос, соответствующий все элементы носителей и это имеет группирующийся тип MPMediaGroupingGenre.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • - init Доступный в iOS 3.0 через iOS 7.1

    Инициализирует универсальный мультимедийный запрос.

    Объявление

    Objective C

    - (id)init

    Обсуждение

    Универсальный мультимедийный запрос не имеет никаких предикатов фильтра и никакой конфигурации группировки. Это соответствует все в библиотеке iPod и не обеспечивает группировки или сортировки.

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

    Objective C

    @import MediaPlayer;

    Доступность

    Доступный в iOS 3.0 через iOS 7.1.

  • init (filterPredicates:) - initWithFilterPredicates: Определяемый инициализатор

    Инициализирует мультимедийный запрос с рядом предикатов свойства носителей.

    Объявление

    Swift

    init!(filterPredicates filterPredicates: Set<NSObject>!)

    Objective C

    - (instancetype)initWithFilterPredicates:(NSSet *)filterPredicates

    Параметры

    filterPredicates

    Набор предикатов свойства носителей для использования в качестве фильтра на библиотеке iPod.

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

    Инициализированный мультимедийный запрос.

    Обсуждение

    Ссылка класса MPMediaPropertyPredicate описывает, как создать предикаты свойства носителей. General Media Item Property Keys и Podcast Item Property Keys перечисления в Ссылке класса MPMediaItem содержат ключи, которые можно использовать для построения предикатов.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • filterPredicates Свойство

    Предикаты свойства носителей мультимедийного запроса.

    Объявление

    Swift

    var filterPredicates: Set<NSObject>!

    Objective C

    @property(nonatomic, strong) NSSet *filterPredicates

    Обсуждение

    General Media Item Property Keys и Podcast Item Property Keys перечисления в Ссылке класса MPMediaItem содержат ключи, которые можно использовать для построения предикатов.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • groupingType Свойство

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

    Объявление

    Swift

    var groupingType: MPMediaGrouping

    Objective C

    @property(nonatomic) MPMediaGrouping groupingType

    Обсуждение

    Тип группировки значения по умолчанию MPMediaGroupingTitle. Посмотрите, что Набор элементов Носителей Группирует Ключи для списка доступных типов группировки.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • itemSections Свойство

    Массив MPMediaQuerySection экземпляры, представляющие группировку раздела указанных элементов носителей запроса.

    Объявление

    Swift

    var itemSections: [AnyObject]! { get }

    Objective C

    @property(nonatomic, readonly) NSArray *itemSections

    Обсуждение

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

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • collectionSections Свойство

    Массив MPMediaQuerySection экземпляры, представляющие группировку раздела указанных наборов элементов носителей запроса.

    Объявление

    Swift

    var collectionSections: [AnyObject]! { get }

    Objective C

    @property(nonatomic, readonly) NSArray *collectionSections

    Обсуждение

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

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • Добавляет предикат свойства носителей к запросу.

    Объявление

    Swift

    func addFilterPredicate(_ predicate: MPMediaPredicate!)

    Objective C

    - (void)addFilterPredicate:(MPMediaPredicate *)predicate

    Параметры

    predicate

    Предикат носителей для добавления к набору предикатов для запроса.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • Удаляет предикат фильтра из запроса.

    Объявление

    Swift

    func removeFilterPredicate(_ predicate: MPMediaPredicate!)

    Objective C

    - (void)removeFilterPredicate:(MPMediaPredicate *)predicate

    Параметры

    predicate

    Предикат носителей для удаления из набора предикатов для запроса.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

Вы получаете указанный массив элементов носителей или наборов элементов носителей от библиотеки iPod путем вызова items или collections методы доступа.

  • items Свойство

    Массив элементов носителей, соответствующих предикат мультимедийного запроса.

    Объявление

    Swift

    var items: [AnyObject]! { get }

    Objective C

    @property(nonatomic, readonly) NSArray *items

    Обсуждение

    Если никакие элементы не соответствуют предикат, этот метод возвращает пустой массив. На ошибке, возвратах nil.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • collections Свойство

    Массив наборов элементов носителей, содержавшие элементы которых соответствуют предикат свойства носителей запроса.

    Объявление

    Swift

    var collections: [AnyObject]! { get }

    Objective C

    @property(nonatomic, readonly) NSArray *collections

    Обсуждение

    Возвращенный массив наборов сгруппирован и сортирован groupingType из мультимедийного запроса. Следующий фрагмент кода иллюстрирует, как использовать это свойство:

    • // Specify a media query; this one matches the entire iPod library because it
    • // does not contain a media property predicate
    • MPMediaQuery *everything = [[MPMediaQuery alloc] init];
    • // Configure the media query to group its media items; here, grouped by artist
    • [everything setGroupingType: MPMediaGroupingArtist];
    • // Obtain the media item collections from the query
    • NSArray *collections = [everything collections];

    Каждый элемент collections массив теперь содержит набор элементов носителей. Каждый набор содержит элементы носителей от библиотеки iPod определенным художником. Элементы массива сортируются именем художника.

    Для доступных типов группировки посмотрите, что Набор элементов Носителей Группирует Ключи.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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

  • Ключи, используемые с groupingType свойство для конфигурирования мультимедийного запроса.

    Объявление

    Swift

    enum MPMediaGrouping : Int { case Title case Album case Artist case AlbumArtist case Composer case Genre case Playlist case PodcastTitle }

    Objective C

    enum { MPMediaGroupingTitle, MPMediaGroupingAlbum, MPMediaGroupingArtist, MPMediaGroupingAlbumArtist, MPMediaGroupingComposer, MPMediaGroupingGenre, MPMediaGroupingPlaylist, MPMediaGroupingPodcastTitle, }; typedef NSInteger MPMediaGrouping;

    Константы

    • Title

      MPMediaGroupingTitle

      Группы и наборы элементов носителей видов заголовком. Для песен, например, заголовок является названием песни. Это - ключ группировки значения по умолчанию.

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

    • Album

      MPMediaGroupingAlbum

      Группы и наборы элементов носителей видов альбомом и песни видов в альбоме согласно порядку треков.

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

    • Artist

      MPMediaGroupingArtist

      Группы и наборы элементов носителей видов путем выполнения художника.

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

    • AlbumArtist

      MPMediaGroupingAlbumArtist

      Группы и наборы элементов носителей видов художником альбома (основной художник выполнения для альбома в целом).

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

    • Composer

      MPMediaGroupingComposer

      Группы и наборы элементов носителей видов композитором.

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

    • Genre

      MPMediaGroupingGenre

      Группы и наборы элементов носителей видов музыкальным или пленочным жанром.

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

    • Playlist

      MPMediaGroupingPlaylist

      Группы и наборы элементов носителей видов списком воспроизведения.

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

    • PodcastTitle

      MPMediaGroupingPodcastTitle

      Группы и наборы элементов носителей видов заголовком подкаста.

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

    Обсуждение

    Следующий фрагмент кода показывает, как применить группирующийся ключ:

    • MPMediaQuery *everything = [[MPMediaQuery alloc] init];
    • [everything setGroupingType: MPMediaGroupingAlbum];
    • NSArray *collections = [everything collections];

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

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

    Вид наборов согласно тем же правилам используется iTunes на рабочем столе. Это включает уважение основного системного языка, выбранного пользователем. Передовицы, включая, и при использовании английского языка, или “L’”, «La» и «Le» при использовании французского языка, проигнорированы во время сортировки. Если Вы нуждаетесь в точном управлении сортировкой, реализуете его в Вашем приложении.

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

    Objective C

    @import MediaPlayer;

    Swift

    import MediaPlayer

    Доступность

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