0

这是我的问题,假设我有 UIViewController ABC D... 目前我正在为所有 VC 模态转换使用默认转换动画,显示为 -> 在此处输入图像描述

我想要的是......让用户选择他们喜欢使用什么样的过渡动画......对于所有的VC模态过渡动画......我想一些代码需要添加到这里的某个地方?->

- (IBAction)cardAction:(id)sender {
UIImage *img = [(UIButton *)sender currentBackgroundImage];
[self performSegueWithIdentifier:@"cardSegue" sender:img];
}


- (void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender{
if ([segue.identifier isEqualToString:@"cardSegue"]) {
    UIImage * img = (UIImage *)sender;

    ResultViewController *viewcontroller = [segue destinationViewController];
    viewcontroller.img = img;
    }
}

请帮忙..

4

2 回答 2

0

segue 允许您在 Storyboard 中定义转换,但您希望让用户定义转换。UIStoryboardSegue 不允许您这样做,因此您需要自己执行转换。

在此处使用不同样式执行转换有一个很好的答案:

如何在基于导航的应用程序中更改推送和弹出动画

您可以使用该答案中的代码来执行转换,而不是调用 performSegueWithIdentifier。

于 2013-04-05T20:36:07.577 回答
0

您可以创建自己的 segue 子类,然后更改

- (void) perform;

功能。

如果您需要 segue 子类化的示例,请参阅本教程:

>>> 教程链接<<<

问候,尼尔斯

于 2013-04-05T21:02:27.307 回答