0

我正在尝试使用AVQueuePlayer流式传输播放列表并希望能够从UITableView显示列表中的项目中选择歌曲。

每次选择一个项目时,我都尝试重新加载播放器,但我得到了An AVPlayerItem cannot be associated with more than one instance of AVPlayer

itemArray是完整的项目列表。表项的索引clicked = playIndex.

 [player removeAllItems];
    player=nil;
    NSMutableArray *currentItemArray = [NSMutableArray arrayWithArray:itemArray];
    for(int i=0;i<playingIndex; i++)
    {
        [currentItemArray removeObjectAtIndex:0];
    }

        player = [[AVQueuePlayer alloc] initWithItems:currentItemArray];
[player play]

*另外,有没有更好的方法可以在不迭代的情况下删除这些对象?我无法弄清楚 removeObjectsAtIndexes

4

1 回答 1

0

我不明白你的问题到底是什么,但你想做的是[player insertItem:afterItem:]用来动态修改播放列表。同样,用于removeItem从播放列表中动态删除项目。

从数组中删除对象直到playingIndex

[currentItemArray removeObjectsInRange:NSMakeRange(0,playingIndex)];
于 2013-03-01T12:24:35.093 回答