什么是返回执行segue的正确方法?

时间:2017-02-18 09:04:44

标签: ios objective-c uiviewcontroller segue

基本上我有一个视图控制器,用[self performSegueWithIdentifier: sender:];推送到下一个视图控制器,在prepareForSegue我想将VC的标题改为"返回"这样在后一个VC中,后退栏按钮项将是"返回"而不是最初的VC的标题。

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

    self.title = @"Back";

}

enter image description here

现在的问题是,当我通过点击“返回”按钮返回第一个VC时,我必须将标题更改回初始标题,否则标题将保持为"返回"。

如果只有像prepareForSegue这样的方法,那么我就可以获得目标VC并更改它的标题......

另一个例子是我有一个3个视图控制器的故事板,如下所示:

enter image description here

我已隐藏导航控制器以使用我自己的按钮返回segue。虽然这种方式有效,但似乎很奇怪我必须再添加2个segue才能返回第一个VC ......

2 个答案:

答案 0 :(得分:1)

在故事板中,将导航项拖到第一个视图控制器上。将标题设置为视图控制器的标题,后退按钮设置为“返回”

enter image description here

或者,要以编程方式执行此操作,请使用nil操作和目标创建UIBarButtonItem,然后分配给navigationItem.backBarButtonItem(确保在视图控制器中执行此操作来自

答案 1 :(得分:-1)

在方法prepareForSegue:中,您可以通过destinationViewController获得segue.destinationViewController。我想这就是你想要的。