Ios Xcode中的iPad序列错误
这里是noobxcode问题 我有一个基本的主细节设置 当我在主列表中选择一个项目时,它会带来第二个包含详细信息的“主”侧栏,而不是更新详细信息页面 所以我从这个开始: 我点击“Nick Jones”得到以下信息: 情节提要如下所示: 但如果单击主视图控制器,则详图视图控制器的大小将更改为: 我正在尝试将教程“你的第二个iOS应用程序”教程改编为iPad(而不是iPhone)。关键的segue页面是。我已经在导航控制器和细节视图控制器之间重新建立了一个segue链接,因为如果没有它,它几乎无法工作,但我显然做得不对Ios Xcode中的iPad序列错误,ios,xcode,ipad,segue,master-detail,Ios,Xcode,Ipad,Segue,Master Detail,这里是noobxcode问题 我有一个基本的主细节设置 当我在主列表中选择一个项目时,它会带来第二个包含详细信息的“主”侧栏,而不是更新详细信息页面 所以我从这个开始: 我点击“Nick Jones”得到以下信息: 情节提要如下所示: 但如果单击主视图控制器,则详图视图控制器的大小将更改为: 我正在尝试将教程“你的第二个iOS应用程序”教程改编为iPad(而不是iPhone)。关键的segue页面是。我已经在导航控制器和细节视图控制器之间重新建立了一个segue链接,因为如果没有它,它几
谢谢。几点观察:
重新加载数据视图控制器本身就是一个表视图,主视图控制器有一个方法,它可以执行以下操作:(a)告诉细节视图控制器它正在查看的细节项;(b)告诉它重新加载数据
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath
{
NSDate *object = _objects[indexPath.row];
self.detailViewController.detailItem = object;
[self.detailViewController.tableView reloadData];
}
你可以用任何一种方法,但我认为后一种方法可能更有意义。现在,你的内心深处涌动着深深的感激之情。我现在无法实施你的建议(否则我妻子会非常不高兴),但是+1,盲目地打勾,我可以从你最全面的答案中拼凑出一些东西。对你很好:)我仍然很悲伤,恐怕:(我已经采用了你的无分段方法,但它没有传递数据。自定义方法是-(void)tableView:(UITableView*)tableView没有选择rowatindexpath:(nsindepath*)indepath{Student*studentAtIndex=[self.dataController objectInListAtIndex:indexath.row];self.detailViewController.Student=studentAtIndex;[self.tableView reloadData];}
。我知道studentAtIndex指向了正确的位置,因为如果我输入studentAtIndex.firstName=@“Ben”
,它更改了主控形状。你能看到错误吗?我应该发布另一个问题吗?谢谢。@Nick我建议仔细检查self.detailViewController
和self.detailViewController.tableView
的值,以确保它们都不是nil
。我知道我曾经花了很多时间调试分割视图g在此之前,我注意到,detailViewController
没有初始化(例如,您需要在viewDidLoad
中初始化它,比如self.detailViewController=(detailViewController*)[[self.splitViewController.viewControllers lastObject]topViewController]
.iOS从来不会在对象指针为nil时警告我们
@Nick只要在代码中设置断点,并通过相关例程,您就会发现它从裂缝中滑出的地方!不过我知道它是有效的,因为我在这里测试了它!成功:)我已经注释了指针的建立位置,正如您所说:self.detailViewController=(CRDetailViewController*)[[self.splitViewController.viewControllers lastObject]topViewController];
再次感谢。