2013-05-06 88 views
0

IM下面这个教程的ios: http://developer.apple.com/library/ios/#documentation/iPhone/Conceptual/SecondiOSAppTutorial/CustomizingDetailView/CustomizingDetailView.html#//apple_ref/doc/uid/TP40011318-CH5-SW3主从场景,细节的场景不会正确加载

和IM创建一个主场景和细节的场景。它们都按照教程中的描述完成。

现在问题是,当我进入细节场景时,细节场景的布局未加载。相反,没有任何东西的主场景布局被加载。

到目前为止,我所看到的问题都与将主场景中的数据传输到细节场景有关。

本教程不包括这种方法:

  • (无效)的tableView:(UITableView的*)的tableView didSelectRowAtIndexPath方法:(NSIndexPath *)indexPath

没有它,应用程序不可能从主走场景到细节场景。我认为segue方法是假设传输数据并使其进入细节场景,但由于某种原因它没有。所以这种方法编辑为

{

BirdSighting *sightingAtIndex = [self.dataController objectInListAtIndex:indexPath.row]; 

    BirdsDetailViewController *bd= [[BirdsDetailViewController alloc] init]; 

    bd.sighting = sightingAtIndex; 

    [self.navigationController pushViewController:bd animated:YES]; 

}

现在的应用程序可以从主场景细节现场去,但细节的场景看起来像一个主场景,没有什么就可以了。

任何关于这个或在场景之间传输数据的帮助都非常感谢。先谢谢你。

回答

0

问题似乎归结为prepareForSegue没有被调用,只是使用didselectrowatindexpath不正确传输数据。

,所以你可以通过看这个答案在这里解决它: Custom UITableViewCell not calling prepareForSegue

好像当用户触摸一个细胞,didSelectRowAtIndex叫,但prepareForSegue心不是。所以你需要手动调用performSegue for prepareForSegue才能工作?这是我的解释。

0

重点在于表格视图选择方法不需要实现,因为选择自动触发segue。如果您详细地按照指南进行操作,并且最后您将配置Segue和Segue触发器的处理,以便在新的详细视图出现在屏幕上之前对其进行配置。