0

このエラーメッセージが表示されます:- [MPConcreteMediaItem isEqualToString:]:認識されないセレクターがインスタンスに送信されました…</ p>

メディアピッカーから「array」という名前の配列に曲のNSMutable配列を作成しています。この配列は、テーブルビュー(myTable)に正しく表示されます。ただし、このチュートリアルに従って、詳細ビューにセグエして曲のタイトルを詳細ビューのラベルに送信しようとすると、上記のクラッシュとエラーメッセージが表示されます。

助けてくれてありがとう!

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {

    if ([[segue identifier] isEqualToString:@"detailView"]) {

    NSIndexPath *indexPath = [self.myTable indexPathForSelectedRow];

    DetailViewController *vc = [segue destinationViewController];

    vc.trackName = [array objectAtIndex:indexPath.row];

    //crashes -[MPConcreteMediaItem isEqualToString:]: unrecognized selector sent to instance

    }

}

- (void)mediaPicker:(MPMediaPickerController *)mediaPicker didPickMediaItems:(MPMediaItemCollection *)mediaItemCollection {

    [array addObjectsFromArray:mediaItemCollection.items];

    [myTable reloadData];

    // mediaItemCollection = nil;

    [mediaPicker dismissViewControllerAnimated:YES completion:nil];

}

-(UITableViewCell *)tableView:(UITableView *)tableView cellForRowAtIndexPath:(NSIndexPath *)indexPath {

    //this method is called to fill out table with data

    UITableViewCell *cell = [tableView dequeueReusableCellWithIdentifier:@"Cell"];

    if (cell == nil) {

    cell = [[UITableViewCell alloc]

    initWithStyle:UITableViewCellStyleDefault

    reuseIdentifier:@"Cell"];

}

    // Configure the cell

    anItem = nil;

    anItem = [array objectAtIndex:indexPath.row];

    cell.textLabel.text = [anItem valueForProperty:MPMediaItemPropertyTitle];

    cell.accessoryType = UITableViewCellAccessoryDetailDisclosureButton;

    return cell;

}
4

1 に答える 1

0

エラーは、文字列オブジェクトで「isEqualToString:」を呼び出していないようです...どのスーパークラスにMPConcreteMediaItemがありますか

于 2013-01-16T21:22:51.273 に答える