如何在performSegueWithIdentifier中使用sender?

时间:2014-09-22 02:21:34

标签: ios

我已使用以下方法以编程方式启动了segue:

[self performSegueWithIdentifier:@"loginToCategories" sender:object];

我想知道新的视图控制器对象是否可以访问我在发件人中插入的“对象”。

2 个答案:

答案 0 :(得分:3)

如果希望目标视图控制器获取segue的发送者,则需要从prepareForSegue方法向destinationViewController发送消息。

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([segue.identifier isEqualToString:@"MySegue"]) {
        MyViewController *destinationViewController = (MyViewController *)segue.destinationViewController;
        destinationViewController.sender = sender;
    }
}

This question非常相似。

答案 1 :(得分:1)

是的,你可以访问。 在loginToCategories中添加此内容

- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
{
    if ([[segue identifier] isEqualToString:@"yourControllerName"]) {

    }
}