有没有办法在 -[UIViewController performSegueWithIdentifier:sender:] 之外以编程方式获取 Storyboard中创建的转场?
理想情况下,我希望能够在 Storyboard 中创建转场,在代码中获取这些转场,并检索这些转场的目标 View Controller 。对我来说,这比使用 View Controller 标识符更简洁、更易于维护,例如 [[UIStoryboard storyboardWithName"Main"bundle:nil] instantiateViewControllerWithIdentifier"identifier"] 。
一个使用示例是实现一个 3D 触摸深按手势来窥视和弹出一个 View Controller ,否则该 Controller 是通过传统的 segue 访问的。
Best Answer-推荐答案 strong>
要以编程方式获取 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/
|