OGeek|极客世界-中国程序员成长平台

标题: ios - 以编程方式获取segue(和目标 View Controller )的任何方式? [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 12:13
标题: ios - 以编程方式获取segue(和目标 View Controller )的任何方式?

有没有办法在 -[UIViewController performSegueWithIdentifier:sender:] 之外以编程方式获取 Storyboard中创建的转场?

理想情况下,我希望能够在 Storyboard 中创建转场,在代码中获取这些转场,并检索这些转场的目标 View Controller 。对我来说,这比使用 View Controller 标识符更简洁、更易于维护,例如 [[UIStoryboard storyboardWithName"Main"bundle:nil] instantiateViewControllerWithIdentifier"identifier"]

一个使用示例是实现一个 3D 触摸深按手势来窥视和弹出一个 View Controller ,否则该 Controller 是通过传统的 segue 访问的。



Best Answer-推荐答案


要以编程方式获取 segue,您可以使用以下代码,它将返回 segue 数组。

objective-c

NSArray *segueTemplates = [(UIStoryboardSegue *) self valueForKey"storyboardSegueTemplates"] ;
  for (UIStoryboardSegue *string in segueTemplates) {
    NSLog(@"%@", string.identifier);
  }

swift

let segueTemplates = self.valueForKey("storyboardSegueTemplates")

关于ios - 以编程方式获取segue(和目标 View Controller )的任何方式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34053920/






欢迎光临 OGeek|极客世界-中国程序员成长平台 (http://jike.in/) Powered by Discuz! X3.4