Objective c 尝试调用第二个表视图,其中包含第一个视图中取消选择的播放列表项

Objective c 尝试调用第二个表视图,其中包含第一个视图中取消选择的播放列表项,objective-c,uitableview,cocoalibspotify-2.0,libspotify,Objective C,Uitableview,Cocoalibspotify 2.0,Libspotify,也许有人能帮我解决问题。我似乎无法使用cocoalibspotify显示播放列表项。我已经设置了播放视图,第一个ableviewcontroller显示播放列表,但当我尝试调用所选播放列表的项目时,我的输出显示的行数似乎为0。第一个视图显示如何将indexpath传递给secondviewcontroller。第二个脚本显示playlitemstavle视图控制器的my.h和.m文件 概述.m-带有播放列表的tableView - (void)tableView:(UITableView *)t

也许有人能帮我解决问题。我似乎无法使用cocoalibspotify显示播放列表项。我已经设置了播放视图,第一个ableviewcontroller显示播放列表,但当我尝试调用所选播放列表的项目时,我的输出显示的行数似乎为0。第一个视图显示如何将indexpath传递给secondviewcontroller。第二个脚本显示playlitemstavle视图控制器的my.h和.m文件

概述.m-带有播放列表的tableView

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
    [playlistView deselectRowAtIndexPath:indexPath animated:NO];
    playlistItemViewController *trailsController = [[playlistItemViewController alloc] initWithStyle:UITableViewStylePlain];
    trailsController.currentPlaylist = [playlistArray objectAtIndex:indexPath.row];
    //[[self navigationController] pushViewController:trailsController animated:YES];
    [self getSongs];
}

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
    if ([segue.identifier isEqualToString:@"showPlaylistItem"]) {
        UITableViewCell *BasicCell = (UITableViewCell *) sender;
        NSIndexPath *ip = [self.tableView indexPathForCell:BasicCell];
        SPPlaylist *selectedPlaylist = [playlistArray objectAtIndex:ip.row];

        playlistItemViewController *pivc = (playlistItemViewController *) segue.destinationViewController;
        pivc.currentPlaylist = selectedPlaylist;
    }
}
playlitemsviewcontroller.h-

   #import <UIKit/UIKit.h>
    #import "CocoaLibSpotify.h"
    #import "Simple_PlayerAppDelegate.h"
    #import "overViewController.h"


    @interface playlistItemViewController : UITableViewController

    {
        UITableView *tableView;
    }

    @property (retain, nonatomic) IBOutlet UITableView *tableView;

    @property (strong, readwrite, nonatomic) SPPlaylist *currentPlaylist;




    @end

您需要等待播放列表加载,然后项目才可用

播放列表视图控制器需要使用
SPAsyncLoading
加载播放列表,如下所示:

[SPAsyncLoading waitUntilLoaded:self.currentPlaylist timeout:kSPAsyncLoadingDefaultTimeout then:^(NSArray *loadedItems, NSArray *notloadedItems) {
    [self.tableView reloadData];
}];

播放列表加载可能需要一段时间,因此请确保设置一些“加载”UI。在它们的名称可用之前,您还需要以类似的方式加载可见轨迹

现在还不清楚通过同时实现DidSelectRowatineXpath和prepareForSegue,您想要实现什么。在这些方法中,您都在创建或引用PlayItemViewController。如果您在故事板中制作了控制器,并且正在使用segues,则不需要实现didSelectRowAtIndexPath。如果您删除了didselectrow方法,因为我确实在使用prepare for segue…但我仍然获得0个播放列表项您在哪里获得0个播放列表项?如果您在PrepareForSegue中记录selectedPlaylist,您会得到什么?我已经设法解决了。“为segue做准备”方法确实有问题。所以我改变了这一点,然后在我的播放列表视图中添加了上面的代码,猜猜看……它起了什么作用……谢谢大家……再次感谢你们的帮助。。。。
[SPAsyncLoading waitUntilLoaded:self.currentPlaylist timeout:kSPAsyncLoadingDefaultTimeout then:^(NSArray *loadedItems, NSArray *notloadedItems) {
    [self.tableView reloadData];
}];