当’B’将从’A’呈现时,它检查一个陈述是否为真.只有在为真时,才应立即显示“C”而不是“B”.用户继续’D’,并且从’D’应该有一个退绕segue回到’B’.
我可以检查’B’的vIEwDIDAppear()中的if语句,但是在加载vIEwcontroller’C’之前,视图将首先加载几毫秒.它看起来不太好看.
如果我尝试在vIEwDIDLoad()中创建if语句,我会收到一个错误:
试图在“B”上显示“C”,其视图不在窗口层次结构中
也许有更好的方法来解决这个问题?
解决方法 如果没有实际显示您所选择的每个VIEwController,则无法使用segues.仅在实际呈现VIEwController之后调用Segues,例如,您不能从vIEwDIDLoad中进行调用.跳过具有segues的VIEwController的唯一选择是,如果你设置两个不同的segue,一个你采取“完整路径”,比如说A-> B-> C,你可以跳过B,A-> ;C.所以你需要从A和B得到一个C的segue.
当然使用这种方法你不能使用unwind segue到一个根本没有呈现的VIEwController.您可以通过不使用展开segues来解决此问题,但也可以通过“向后”设置segues来解决此问题.我所说的“向后”是指你设置一个segue说D-> B,然后你可以“回”到B,即使你的segues的顺序是A-> C-> D-> B.
总结以上是内存溢出为你收集整理的swift – 在呈现视图之前即时segue全部内容,希望文章能够帮你解决swift – 在呈现视图之前即时segue所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)