我有一个包含 2 个表视图的视图。这个视图有控制器 PlayerDetailController 现在来控制 2 个表视图我有 2 个其他控制器。
- tablePlayersDataSourceDelegate
- tablePlayerNewsDataSourceDelegate
我 ctrl 从 PlayerDetail 视图拖到 newsView 以进行转场。在我的 tablePlayerDataSourceDelegate 中,我有以下方法来执行这个 segue。
-(void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
[self performSegueWithIdentifier:@"showPlayerDetailNews" sender:indexPath];
}
- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
NSIndexPath *indexPath = (NSIndexPath *)sender;
PlayerNews *news = [_tableSource objectAtIndex:indexPath.row]; // ask NSFRC for the NSMO at the row in question
if ([segue.identifier isEqualToString:@"show detail"]) {
[segue.destinationViewController setImageURL:[NSURL URLWithString:news.image]];
[segue.destinationViewController setNewsTitle:news.title];
[segue.destinationViewController setNewsDescription:news.content];
[segue.destinationViewController setNewsCopy:news.image_copyright];
[segue.destinationViewController setNewsUrl:news.url];
[segue.destinationViewController setNewsShortDescription:news.summary];
}
}
但是当我测试时,我得到以下错误。
** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Receiver (<tblPlayerNewsDatasourceDelagete: 0x1e5e44c0>) has no segue with identifier 'showPlayerDetailNews''
我明白为什么这会给出错误。因为 playerDetail 视图使用了 playerDetailController 类,我试图在 tablePlayerNewsDelegate 类中做 te segue。你可能知道解决它的方法吗?
编辑 在这里你看到我在说什么的图片
这样就可以在playerDetailView中看到两个tableview了。单击底部表格视图中的单元格时,它应该转到下一个视图。
编辑2
这就是我在 playerDetailController 中为填充我的 tableview 所做的。我已经把它放在了我的 viewDidLoad 中。
tabelPlayerNews=[[tblPlayerNewsDatasourceDelagete alloc]init];
[tabelPlayerNews setTableSource:_newsArray];
tblNews.dataSource=tabelPlayerNews;
tblNews.delegate=tabelPlayerNews;
tabelPlayerNews.view=tabelPlayerNews.tableView;