MPMediaQuery
Соответствует
-
AnyObject -
CVarArgType -
Сопоставимый -
Hashable -
NSCoding -
NSCopying -
NSObjectProtocol -
NSSecureCoding -
Печатаемый -
NSCopying -
NSObject -
NSSecureCoding
Оператор импорта
Swift
import MediaPlayer
Objective C
@import MediaPlayer;
Доступность
Доступный в iOS 3.0 и позже.
Мультимедийный запрос указывает ряд элементов носителей (экземпляры MPMediaItem) от библиотеки iPod посредством фильтра и группирующегося типа. Отфильтруйте и группирующий тип являются оба дополнительными; неполный запрос соответствует всю библиотеку.
Запрос имеет самое большее один тип группировки. Фильтр запроса может состоять из любого числа предикатов свойства носителей. Вы создаете методы использования фильтров, описанные в Ссылке класса MPMediaPropertyPredicate, на основе ключей свойства, описанных в Ссылке класса MPMediaItem.
После создания и конфигурирования запроса, Вы используете его для получения элементов носителей или наборов элементов носителей. Наборы описаны в Ссылке класса MPMediaItemCollection. Можно также использовать запрос для получения массива MPMediaQuerySection экземпляры, полезные для отображения результатов запроса в пользовательском интерфейсе Вашего приложения. Посмотрите itemSections и collectionSections свойства.
Этот класс включает много конструкторов удобства, что каждый применяет группирующийся тип и, в большинстве случаев, соответствует подмножество библиотеки iPod. Таблица 1 суммирует функции этих конструкторов. Посмотрите Ссылку класса MPMediaItem для описаний записей в столбце Filter. Посмотрите, что Набор элементов Носителей Группирует Ключи для описаний записей в Группирующемся столбце типа.
Имя конструктора |
Соответствует всю библиотеку iPod |
Фильтр |
Группировка типа |
|---|---|---|---|
|
- |
|
|
|
- |
|
|
|
- |
|
|
|
- |
|
|
|
Да |
|
|
|
Да |
|
|
|
Да |
|
|
|
- |
|
|
|
- |
|
|
Методы класса в этом разделе создают запросы, которые можно использовать непосредственно или изменить, как описано в Конфигурировании Мультимедийных запросов. Для каждого метода класса, запрос 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 и позже.
-
Создает мультимедийный запрос, соответствующий музыкальные элементы, и это группируется и наборы видов названием песни.
Возвращаемое значение
Мультимедийный запрос, соответствующий элементы носителей типа
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!(filterPredicatesfilterPredicates: 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: MPMediaGroupingObjective 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 predicateMPMediaQuery *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 queryNSArray *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;Константы
-
TitleMPMediaGroupingTitleГруппы и наборы элементов носителей видов заголовком. Для песен, например, заголовок является названием песни. Это - ключ группировки значения по умолчанию.
Доступный в iOS 3.0 и позже.
-
AlbumMPMediaGroupingAlbumГруппы и наборы элементов носителей видов альбомом и песни видов в альбоме согласно порядку треков.
Доступный в iOS 3.0 и позже.
-
ArtistMPMediaGroupingArtistГруппы и наборы элементов носителей видов путем выполнения художника.
Доступный в iOS 3.0 и позже.
-
AlbumArtistMPMediaGroupingAlbumArtistГруппы и наборы элементов носителей видов художником альбома (основной художник выполнения для альбома в целом).
Доступный в iOS 3.0 и позже.
-
ComposerMPMediaGroupingComposerГруппы и наборы элементов носителей видов композитором.
Доступный в iOS 3.0 и позже.
-
GenreMPMediaGroupingGenreГруппы и наборы элементов носителей видов музыкальным или пленочным жанром.
Доступный в iOS 3.0 и позже.
-
PlaylistMPMediaGroupingPlaylistГруппы и наборы элементов носителей видов списком воспроизведения.
Доступный в iOS 3.0 и позже.
-
PodcastTitleMPMediaGroupingPodcastTitleГруппы и наборы элементов носителей видов заголовком подкаста.
Доступный в 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 и позже.
-
