这听起来有点奇怪。
我有一个视图控制器,我们称之为VC1
,它以模板形式呈现为表单。
当用户点击VC1
中的按钮时,选择器会显示为操作表。当用户选择特定项目并点击"完成"在操作表上,我想以模态方式呈现另一个VC(VC2
)。
让我告诉你行动表:
所以我添加了一个"呈现模态"连接VC1
和UINavigationController
的segue。此UINavigationController
具有VC2
作为其根视图控制器。 segue有一个表格" Form Sheet"和一个" Flip Horizontal"介绍
当我测试我的应用时,控制台中会出现此警告,并且根本没有显示视图控制器:
警告:尝试呈现已经呈现的内容(null)
我就像#34;它到底在说什么? VC1
如何呈现null?"奇怪的是它使用null
(这是C#和Java的术语)而不是nil
(Swift使用的)。
我尝试了不同的过渡和演示。但是出现了同样的信息。我还尝试删除UINavigationController
并直接展示VC2
。这次,错误消息变为:
警告:尝试呈现已经呈现的内容(null)
如何以模态方式呈现VC2
?
答案 0 :(得分:0)
经过一番尝试,我发现像这样调用dispatch_after
并执行segue解决了问题。但我不知道为什么。
dispatch_after(DISPATCH_TIME_NOW, dispatch_get_main_queue()) {
self.performSegueWithIdentifier("someIdentifier", sender: self)
}
也许这是由于某种行动表的魔力。