在iOS中以编程方式在两个屏幕之间传输的正确方法。迅速

时间:2015-11-12 14:21:02

标签: ios swift uiviewcontroller

我有与故事板相关联的ViewController.swift个文件(我将它用于admob设置)。 我的UI在每个viewController类的viewDidLoad函数中编写。 我在storyboard中创建了segues并使用了这段代码:

self.performSegueWithIdentifier("segueName", sender: nil)

这是问题所在。如果我来回移动两个屏幕,不知何故屏幕上的元素数量乘以2。由于这个错误,我设法找到了这个:

Attempt to present VIEWCONTROLLER1 on VIEWCONTROLLER2 whose view is not in 
the window hierarchy!

我第一次回到屏幕时只有一个错误。接下来 - 2,4 ......很快(在屏幕之间来回)延迟变得非常长,就像15秒一样,每次转换都会加倍。

问题是什么以及如何解决?每次移动到下一个屏幕时,都会删除上一个的所有子视图?

1 个答案:

答案 0 :(得分:0)

问题是你每次离开时都要重新创建每个VC。从VC2,您需要致电:

self.unwindForSegue("segueName", towardsViewController: FirstVC)

另请参阅:UnwindForSegue