干净地转换一个Objective-C布尔到Swift布尔?

有没有一个简单的方法来做到这一点,我失踪了? 现在我正在这样做:

let doesConformNumber: NSNumber = NSNumber(unsignedChar: UTTypeConformsTo(utiCF, typeCF)) if doesConformNumber.boolValue { return true } 

如果我试图做一个简单的演员就像这样:

 let testBool: Bool = UTTypeConformsTo(utiCF, typeCF) 

我得到的错误'布尔'不能转换为'布尔'

任何人有一个更干净的方式做这种转换?

UTTypeConformsTo()返回一个Boolean ,它是Int8的types别名,不能直接转换为Bool 。 最简单的方法是

 let testBool : Bool = UTTypeConformsTo(utiCF, typeCF) != 0 

types注释实际上不是必须的:

 let testBool = UTTypeConformsTo(utiCF, typeCF) != 0