ios – Xcode,在哪里分配segue标识符

ios – Xcode,在哪里分配segue标识符,第1张

概述请原谅我的初学者问题. 我知道我可以像这样切换到另一个屏幕(ViewController) self.performSegueWithIdentifier ("SecondViewController", sender: self) 但我似乎无法找到在哪里指定我的第二个屏幕的id,我只是找到Storyboard ID,是吗? 我已经尝试过,只是因为以下错误而收到了崩溃: Receiver () h 请原谅我的初学者问题.
我知道我可以像这样切换到另一个屏幕(VIEwController)
self.performSegueWithIDentifIEr ("SecondVIEwController",sender: self)

但我似乎无法找到在哪里指定我的第二个屏幕的ID,我只是找到Storyboard ID,是吗?

我已经尝试过,只是因为以下错误而收到了崩溃:

Receiver () has no segue
with IDentifIEr ‘SecondVIEwController’

任何的想法?谢谢

解决方法 Segue IDentifIEr与故事板ID,当您想要基于特定故事板创建VIEw Controller时使用的故事板ID不同 – 并且它必须是唯一的,与segue标识符不同.

如果您已经知道如何创建segue,则可以跳过此部分.

在两个vIEwControllers之间添加segue:

在Interface Builder中,按ctrl并在要链接的两个VIEw Controller之间拖动(确保从视图控制器本身拖动,而不是从主视图拖动).你应该看到:

选择“显示” – 例如 – 输出应如下所示:

如上所示,红色矩形包围的箭头是segue.

附加说明:如果您选择了“显示”选项,则必须在导航控制器中嵌入您的第一个视图控制器(选择您的第一个vIEwController – >编辑器 – >嵌入 – >导航控制器),输出应该看起来像:

因为“显示”意味着推入导航控制器堆栈.

为segue分配标识符:

选择segue,从属性检查器中你会看到“IDentifIEr”文本字段,就是这样!确保插入与performSegueWithIDentifIEr中使用的完全相同的名称.

如果您不知道在何处找到属性检查器,则它位于右上方,如下所示:

此外:

要从一个VIEw Controller添加多个segue,请按照相同的过程(从第一个控制器到另一个VIEw Controller的ctrl拖动),输出应如下所示:

在这种情况下,您可能面临如何识别已执行哪个segue的问题,覆盖prepare(for:sender:)方法是解决方案,您可以根据segue标识符属性进行检查:

overrIDe func prepare(for segue: UIStoryboardSegue,sender: Any?) {    if (segue.IDentifIEr == "firstSegueIDentifIEr") {        // ...    } else if (segue.IDentifIEr == "secondSegueIDentifIEr") {        //...    }}

这是您在故事板中添加到segue的名称.

总结

以上是内存溢出为你收集整理的ios – Xcode,在哪里分配segue标识符全部内容,希望文章能够帮你解决ios – Xcode,在哪里分配segue标识符所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1102435.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存