【发布时间】:2015-06-09 17:50:19
【问题描述】:
您好,我正在尝试从用户加星标的歌曲中提取艺术家。我知道 starredListForUserInSession 返回一个 PlaylistSnapshot。它有一个 firstTrackPage 属性,它是一个 SPTListPage。
在我打印出 SPTListPage 时的测试中,它说列表有 8 个项目。当我尝试使用 ListPage.items 获取 ListPage 中的项目时,它返回 nil。我不确定出了什么问题。我是否调用了错误的属性?
func retrieveStarred() -> Void {
SPTRequest.starredListForUserInSession(self.session, callback: { (error:NSError!, starred: AnyObject!) -> Void in
if error != nil {
println("error retrieving starred playlist")
} else {
self.starred = starred as SPTPlaylistSnapshot
self.scrapePlaylist(self.starred)
}
})
}
func scrapePlaylist(playlist: SPTPlaylistSnapshot) -> Void {
println(playlist);
var firstTracks = playlist.firstTrackPage
println(firstTracks)
println(firstTracks.hasNextPage)
var songs = firstTracks as SPTListPage
println(songs.items)
for song in songs.items {
var track = song as SPTPartialTrack
for artist in track.artists {
updateSongsCount(artist as SPTPartialArtist)
}
}
}
【问题讨论】:
-
你有没有想过这个问题?我有同样的问题。谢谢