extension UINavigationController{ func myPopToVIEwController(vIEwController:UIVIEwController,animated:Bool) -> UIVIEwController? { var arrVIEwControllers:[UIVIEwController] = [] arrVIEwControllers = self.vIEwControllers for vc:UIVIEwController in arrVIEwControllers { if(vc.isKind(of: vIEwController) ) // This line gives me error { return (self.navigationController?.popToVIEwController(vc,animated: animated)?.last)! } } return nil }}
/Users/varunnaharia/documents/Projects/appname/appname/Public/UINavigationController+Extra.swift:18:30: Cannot convert value of type ‘UIVIEwController’ to expected argument type ‘AnyClass’ (aka ‘AnyObject.Type’)
如果尝试使用
if(vc is vIEwController)
它给
/Users/varunnaharia/documents/Projects/appname/appname/Public/UINavigationController+Extra.swift:18:22: Use of undeclared type ‘vIEwController’
我通过这个称呼它
self.navigationController?.popOrPopToVIEwController(vIEwController: MyUIVIEwController(),animated: false)解决方法 如果要与特定视图控制器进行比较,则必须比较它们的参考.
试试这个…
if(vc === vIEwController) ){ return (self.navigationController?.popToVIEwController(vc,animated: animated)?.last)!}总结
以上是内存溢出为你收集整理的ios – 如何在Swift 3中比较UIViewController?全部内容,希望文章能够帮你解决ios – 如何在Swift 3中比较UIViewController?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)