我在XCode 6中创建了一个应用程序.今天我下载了XCode 7,它已将我的应用程序更新为
Swift 2.有很多错误,但现在只有一个我无法解决.
我不知道为什么,但Xcode不喜欢动画的任何Bool选项并显示此错误 –
我不知道为什么,但Xcode不喜欢动画的任何Bool选项并显示此错误 –
‘Bool’ is not convertible to ‘BooleanLiteralConvertible’
(如果你看一下这个函数本身,你会看到它完全需要动画的Bool)
var startVC = self.viewControllerAtIndex(indexImage) as ContentViewController var viewControllers = NSArray(object: startVC) self.pageViewContorller.setViewControllers(viewControllers as [AnyObject],direction: UIPageViewControllerNavigationDirection.Forward,animated: true,completion: nil) 'Bool' is not convertible to 'BooleanLiteralConvertible'
有谁知道,我该怎么解决?
谢谢.
解决方法
Swift很困惑,并给你一个不正确的错误信息.问题是第一个参数的类型为[UIViewController] ?,因此以下内容应该有效:
self.pageViewContorller.setViewControllers(viewControllers as? [UIViewController],completion: nil)
或者甚至更好,将viewControllers声明为[UIViewController]类型,然后在调用中不需要转换:
let viewControllers:[UIViewController] = [startVC] self.pageViewContorller.setViewControllers(viewControllers,completion: nil)