UIStoryboardSegue - performSegue 方法传递类而不是标识符
Posted
技术标签:
【中文标题】UIStoryboardSegue - performSegue 方法传递类而不是标识符【英文标题】:UIStoryboardSegue - performSegue method passing the class rather than identifier 【发布时间】:2013-03-22 10:12:04 【问题描述】:我正在尝试以编程方式执行 segue(因为显然 segue 操作和 IB 操作不能很好地协同工作)。因此,我设置了一个 IBAction 来做一些事情,然后发送 performSegue 方法。我能找到的唯一 performSegue* 方法是“performSegueWithIdentifier:”,这不是我需要的,因为我有一个自定义 segue,它是 UIStoryboardSegue 的子类。
有没有办法以编程方式将类作为 segue 传递(例如在 IB 中,您可以将类设置为 segue 而不是标识符)?
【问题讨论】:
你是什么意思“通过一个类作为一个segue”? 【参考方案1】:您可以通过手动触发转场来实现这一点。选择文件所有者并为手动触发的 segue 提供标识符。然后你也可以在prepare for segue方法中传递任何你喜欢的东西。
-(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender
if ([segue.identifier isEqualToString:@"ChooseAPlayer"])
chooseplayer = [segue destinationViewController];
chooseplayer.serviceReceiver = ForNextScreen;
【讨论】:
以上是关于UIStoryboardSegue - performSegue 方法传递类而不是标识符的主要内容,如果未能解决你的问题,请参考以下文章
使用自定义动画删除自定义 UIStoryboardSegue