mom*_*per 28 ios uistoryboardsegue swift
我的iPhone应用程序(使用swift构建)中有两个视图控制器,使用Xcode 6.1构建并使用故事板.
第一个视图控制器嵌入在故事板中的导航控制器中,第二个视图控制器的segue是"Show"segue.
运行应用程序时,它会在iOS 8.x中正确显示转换为推送,但在iOS 7.x中,它显示为没有导航栏的模式.
我的应用程序要求是将转换显示为推送,无论是iOS 7还是iOS 8.任何想法都可以在iOS的两个版本中实现推送?
我看到了一个提到这个问题的相关帖子,但是找不到问题的解决方案:故事板中的自适应segue Xcode 6.推送是否被弃用?
任何帮助表示赞赏......
谢谢
Tom*_* C. 22
此解决方案在以下方面与其他解决方案不同:
我只是给出了一个非常详细的SO答案,它完整地解释了发生了什么以及为什么,但简单的解决方案是你可以删除没有推动的Segue,然后在故事板上重新创建它.原因是segue中可能存在xml的损坏(请参阅扩展答案/示例如何确认此问题).
确认视图层次结构中至少有一个UINavigationController后,请确保segue不是手动segue,并且没有与之关联的操作(通过将故事板中的segue视为源代码).删除现有的segue,然后按住Ctrl键从UIView/UIControl拖动到目标视图控制器,如果需要自定义操作,则在prepareForSegue中拦截对目标控制器的调用.
另外要确认此解决方案适合您,请执行以下操作:
jom*_*fer 10
您可能已将初始视图控制器分配给UIViewController而不是UINavigationController.此外,选择您的UIViewController并检查是否取消选中"是初始视图控制器"选项.

对我来说,我的故事板缺少导航控制器。我正在以编程方式创建导航控制器,它在 iOS8 中运行良好,但在 iOS7 中运行良好。
解决方案
我相信这是Xcode 7.2中的一个错误.为了解决方法,您可以创建一个"推(不推荐)"segue,然后在Storyboard编辑器中选择segue并将其更改为Show(例如Push)
| 归档时间: |
|
| 查看次数: |
12292 次 |
| 最近记录: |