0

私はcocoalibspotifyを使用しています。SPPlaylistからSPPlaylistItemを取得する方法を知りたいですか?私は自分のプレイリストを持っています。プレイリスト(名前)を使用してプレイリストアイテムを取得するにはどうすればよいですか?

4

1 に答える 1

0

ハァッ..ついに答えが出ました。プレイリストからプレイリストアイテムを取得する方法を見つけました。

調査中に、プレイリストアイテムがキーパスから来ていることがわかりました@unionOfArrays.items。したがって、これを削除すると、playlistitemではなくプレイリストのリストのみを取得できます。

ここで私のコードを参照してください:

    // arrPlaylist -> mutablearray which stores the value of loaded playlist in order to use it later 
    // tblPlaylist -> Tablename which displays list of playlist. 

[SPAsyncLoading waitUntilLoaded:[SPSession sharedSession] timeout:kSPAsyncLoadingDefaultTimeout then:^(NSArray *loadedession, NSArray *notLoadedSession) 
    {
        // The session is logged in and loaded — now wait for the userPlaylists to load.
        NSLog(@"[%@ %@]: %@", NSStringFromClass([self class]), NSStringFromSelector(_cmd), @"Session loaded.");

        [SPAsyncLoading waitUntilLoaded:[SPSession sharedSession].userPlaylists timeout:kSPAsyncLoadingDefaultTimeout then:^(NSArray *loadedContainers, NSArray *notLoadedContainers) 
        {
            // User playlists are loaded — wait for playlists to load their metadata.
            NSLog(@"[%@ %@]: %@", NSStringFromClass([self class]), NSStringFromSelector(_cmd), @"Container loaded.");

            NSMutableArray *playlists = [NSMutableArray array];
            [playlists addObject:[SPSession sharedSession].starredPlaylist];
            [playlists addObject:[SPSession sharedSession].inboxPlaylist];
            [playlists addObjectsFromArray:[SPSession sharedSession].userPlaylists.flattenedPlaylists];

            [SPAsyncLoading waitUntilLoaded:playlists timeout:kSPAsyncLoadingDefaultTimeout then:^(NSArray *loadedPlaylists, NSArray *notLoadedPlaylists) 
            {
                // All of our playlists have loaded their metadata — wait for all tracks to load their metadata.
                NSLog(@"[%@ %@]: %@ of %@ playlists loaded.", NSStringFromClass([self class]), NSStringFromSelector(_cmd), 
                      [NSNumber numberWithInteger:loadedPlaylists.count], [NSNumber numberWithInteger:loadedPlaylists.count + notLoadedPlaylists.count]);
                            NSLog(@"loadedPlaylists >> %@",loadedPlaylists);

                arrPlaylist = [[NSMutableArray alloc] initWithArray:loadedPlaylists];
                NSLog(@"arrPlaylist >> %@",arrPlaylist);

                [tblPlaylist reloadData];
            }];
        }];
    }];
于 2012-09-21T10:13:14.507 に答える