我在Swift中使用CGImageAlphaInfo
和CGBitmapInfo
执行按位运算时遇到问题。使用CGBitmapInfo和CGImageAlphaInfo按位运算
特别是,我不知道如何来港这个Objective-C代码:
bitmapInfo &= ~kCGBitmapAlphaInfoMask;
bitmapInfo |= kCGImageAlphaNoneSkipFirst;
下面简单雨燕端口产生略带神秘的编译器错误'CGBitmapInfo' is not identical to 'Bool'
最后一行:
bitmapInfo &= ~CGBitmapInfo.AlphaInfoMask
bitmapInfo |= CGImageAlphaInfo.NoneSkipFirst
看着源代码,我注意到CGBitmapInfo
被声明为RawOptionSetType
而CGImageAlphaInfo
不是。也许这跟它有关系?
这对位运算符的官方文档不包括枚举没有帮助。
不再适用于Xcode 6.1 – wbarksdale 2014-10-21 15:48:46
@wbarksdale谢谢,更新了新的语法。 – 2014-10-21 15:54:16
这在swift 2.0中改变了,现在使用OptionSetTypeProtocol。现在使用'var bitmapInfo:CGBitmapInfo = CGBitmapInfo(rawValue:〜CGBitmapInfo.AlphaInfoMask.rawValue | CGImageAlphaInfo.NoneSkipFirst.rawValue)' – JackPearse 2015-08-20 13:18:36