大佬教程收集整理的这篇文章主要介绍了ios – 使用swift根据任务结果切换视图,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
根据结果,我想切换到另一个视图.但是,当我在完成处理程序中执行此操作时,它不起作用.该应用程序崩溃,出现以下错误:
NSInternalInconsistencyException
*** Assertion failure in -[UIKeyboardTaskQueue waitUntilAllTasksAreFinished],/sourceCache/UIKit_Sim/UIKit-3302.3.1/Keyboard/UIKeyboardTaskQueue.m:374 *** TerminaTing app due to uncaught exception 'NSInternalInconsistencyException',reason: '-[UIKeyboardTaskQueue waitUntilAllTasksAreFinished] may only be called from the main thread.'
注意:要更改视图,请使用以下代码
let vc: AnyObject! = self.storyboard?.instantiateViewControllerWithIdentifier(viewID) self.showViewController(vc as UIViewController,sender: vC)
这有什么不对?
dispatch_async(dispatch_get_main_queue()) { let vc = self.storyboard.instantiateViewControllerWithIdentifier(viewID) as UIViewController showViewController(vc,sender: self) }
请注意,此代码段会进行一些次要的,无关的更改,即:
>将目标视图控制器指定为自己的发送方没有意义.通常你会使用当前的视图控制器或一些UIKit控件作为发送者.
我指定self作为发送者,因为我假设你在源视图控制器中执行了此操作.或者,如果这是一个按钮的IBACtion,也许你会使用IBACtion的sender参数,而不是源视图控制器.>我会失去AnyObject演员阵容.我知道编译器可能会建议你,但它没有帮助代码的易读性.我建议直接将它转换为UIViewController.
以上是大佬教程为你收集整理的ios – 使用swift根据任务结果切换视图全部内容,希望文章能够帮你解决ios – 使用swift根据任务结果切换视图所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。