1
關於MPMediaItem
,是否有辦法爲多個項目/媒體項目集合中的項目獲取屬性,這比分別在每個項目上調用valueForProperty:
更有效?爲多個MPMediaItems批量獲取屬性
我知道enumerateValuesForProperties:usingBlock:
,但它允許批量獲取單個媒體項目的多個屬性。我對多個媒體項目的單個屬性感興趣。
關於MPMediaItem
,是否有辦法爲多個項目/媒體項目集合中的項目獲取屬性,這比分別在每個項目上調用valueForProperty:
更有效?爲多個MPMediaItems批量獲取屬性
我知道enumerateValuesForProperties:usingBlock:
,但它允許批量獲取單個媒體項目的多個屬性。我對多個媒體項目的單個屬性感興趣。
不幸的是,你真的必須一次做一個,但有幾個實際的方法可以做到這一點。例如,如果您想將值加載到一個數組,你可以使用這個for-in循環:
for (MPMediaItem *item in myCollection.items) {
[someMutableArray addObject:[item valueForProperty:MPMediaItemPropertyTitle]];
}
或者,如果你想使用塊枚舉這裏有什麼可能看起來像一個例子:
[myCollection.items enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop){
[someMutableArray addObject:[(MPMediaItem *)[myCollection.items objectAtIndex:idx] valueForProperty:MPMediaItemPropertyTitle]];
}];