gpt4 book ai didi

xcode - 如何在 Storyboard 中应用基于条件的自定义转场

转载 作者:行者123 更新时间:2023-12-04 13:01:39 26 4
gpt4 key购买 nike

我正在研究 Storyboard,它在第一次查看时有几个 View ,如果条件满足,我想要一个条件,那么只应该发生导航

为此,我使用了自定义转场,但无论我的条件是否满足,它都会导航到新 View 。

我在自定义 segue 类中创建了方法

- (void) perform{

NSLog(@"source %@",self.sourceViewController);
NSLog(@"dest %@",self.destinationViewController);

UIViewController *sVC=self.sourceViewController;
UIViewController *dVC=self.destinationViewController;

[sVC.navigationController pushViewController:dVC animated:YES];


}

如果结果为 1,我想设置条件,那么只有它应该导航。将prepareforsegue 或initwithsegue 为我提供任何帮助

最佳答案

你是说你只想在条件为真时执行 segue 吗?

如果是这样,不要直接从控件或表格单元格创建转场,而是创建无触发转场。无触发器转场将 View Controller 作为其来源,并且永远不会自动触发。相反,您可以随时以编程方式触发它,包括从 IBAction 触发。

要创建无触发器转场,请从场景底部的场景停靠栏中包含的 View Controller 图标开始控制并拖动转场。像往常一样拖动到目标场景,然后选择转场类型。选择 segue,然后在检查器中,选择一个 segue 标识符。

在运行时,当你想要执行 segue 时,调用 -[UIViewController performSegueWithIdentifier:sender:]。您可以为发件人传递任何您想要的对象,包括 nil。如果发件人对您没有用,则传递 nil。

所以,总结一下:

  • 创建从 View Controller 到目标场景的无触发器转场
  • 在检查器中为 segue 设置标识符
  • 在运行时和表单代码中,当您想要触发 segue 时调用 -[UIViewController performSegueWithIdentifier:sender:]。
  • 关于xcode - 如何在 Storyboard 中应用基于条件的自定义转场,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10827203/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com