swift - 替换 Storyboard 中的 ViewController,同时保留 Segues

标签 swift xcode uiviewcontroller storyboard segue

我有一个 Storyboard,其中有一个 UITableViewController 以及一些传入和传出的 Segue。假设我想让这个 UITableViewController 成为 UIViewController。目前,我将删除 UITableViewController,将 UIViewController 拖到我的 Storyboard 上并重新创建所有 Segue。

或者,我会使用 Xcode Storyboard重构来拆分我的 Storyboard,这样我至少只需重新创建所有传出的 Segue。但这是不可能的,或者至少在某些情况下是不实际的,因为我希望我的 ViewController 位于同一个 Storyboard中,因为它们属于在一起。

如您所知,这很麻烦,而且我认为它很容易出错。

所以我的问题是:我可以在不丢失传入和传出 Segue 的情况下替换 Storyboard 中的 ViewController 吗?

最佳答案

据我所知,IB 不可能做到这一点。只能在设置中交换 Controller 类名称。但是 UITableViewController 有额外的设置,这些设置不会通过简单的重命名而消失/出现。

我的建议是创建新的 View Controller ,将序列一一链接,然后删除不再链接的 UITableViewController。

(这是我不再使用 Storyboard的几个原因之一。相反,我尝试实现彼此独立的屏幕,这样我就可以更轻松地更改流程和/或替换单个屏幕。)

关于swift - 替换 Storyboard 中的 ViewController,同时保留 Segues,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42886319/

相关文章:

ios - 在构建时覆盖 NSUserDefault 首选项

ios - 无法将值类型 'TableViewController.Type' 转换为预期的参数类型 'UIViewController'

ios - 具有多个参数的 UIMenuContoller UIMenuItem 自定义操作?

objective-c - 为 Xcode 5 的快速帮助⁣帮助创建枚举文档字符串

ios - 为什么 iPhone XR、XS 和 XS Max 不将环境图像应用于 ARKit 中的场景?

ios - 以编程方式更新 Xcode Assets 目录

swift - swift 关闭当前 View Controller 下的所有 View Controller

ios - 有没有办法找出 View Controller 是否从导航堆栈中弹出?

ios - 如何在ios swift中实时更新单元格内容时实时更新tableview单元格内容

ios - 架构 x86_64 iOS Swift 的重复符号