ipad与iphone在故事板和片段上的差异

ipad与iphone在故事板和片段上的差异,ipad,storyboard,Ipad,Storyboard,这是我的第一个iPad/Storyboard/SplitViewController,它有一个表作为主控,每一行都是详细视图的单独文档。我从Xcode 4.2模板开始 我已经让iPhone的一半正常工作了。我从tableviewcell连接了一个segue并接到了电话: - (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { 这样我就可以正确地显示细节视图 在iPad故事板上,我没有接到preparefors

这是我的第一个iPad/Storyboard/SplitViewController,它有一个表作为主控,每一行都是详细视图的单独文档。我从Xcode 4.2模板开始

我已经让iPhone的一半正常工作了。我从tableviewcell连接了一个segue并接到了电话:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender {
这样我就可以正确地显示细节视图

在iPad故事板上,我没有接到prepareforsegue电话。我尝试在masterviewcontroller之间创建一个segue,然后尝试tableviewcell控件,但无法让它调用我的prepareforsegue

我还尝试:

- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath {
    [self performSegueWithIdentifier:@"segueDetailIpad" sender:nil]; 
}
这将调用我的Segue,但tableview没有indexPath集。(不过是在iPhone上设置的)

此外,当我切换回iPhone版本时,它希望调用相同的performsguewithidentifier(如上所述),但随后我必须在不同的@“segueDetailIpad”参数之间切换

在我看来,我正在混合“旧”和“新”的模式,需要找到一些方法来解决这些问题 让iPad使用segue,而不是依赖DidSelectRowatineXpath

希望这足以提供一些建议;-)


谢谢

正如用户589310所说,通过将
[segue destinationViewController]
嵌入
UINavigationController
,我可以解决类似的问题

例如:

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue destinationViewController] class] == [UINavigationController class])
    {
        [[[[segue destinationViewController] viewControllers] objectAtIndex:0] setDelegate:self];
    }
    else
        [[segue destinationViewController] setDelegate:self];
}

似乎是将segue链接到navcontroller而不是viewcontroller来帮助这个哦,我刚刚意识到提交者回答了他们自己的问题。好吧,好吧。