2014-08-29 64 views
3

我得到这个错误做:布尔是无法转换为ObjCBool​​

return (index == self.pagesTitles.count || index == NSNotFound) ? nil : viewControllerAtIndex(++index) 

布尔是无法转换为ObjCBool​​

我想做一个三元运营商简化的东西。有什么不对 ?

+1

什么是索引类型?为什么你需要将NSNotFound包含在这里? – 2014-08-29 08:12:29

+0

尝试将值存储在“temp”变量中,然后将其返回。 'let rValue = UTTypeConformsTo(utiCF,typeCF)!= 0 rValue =(index == self.pagesTitles.count || index == NSNotFound)? nil:viewControllerAtIndex(++ index) return rValue ' – 2014-08-29 08:17:47

+0

我试过它在Xcode-beta6中,它的工作。 'let index = 10 let count = 20 let result =(index == count || index == NSNotFound) ' – 2014-08-29 11:43:55

回答

0

确保您正确指定了返回对象的类型。在你的情况UIViewController?

func myMethod() -> UIViewController? { 
    return (index == self.pagesTitles.count || index == NSNotFound) ? nil : viewControllerAtIndex(++index) 
}