Converting Swift array to CFArray in Xcode 8 (Swift 3)

前端 未结 1 644
暗喜
暗喜 2020-12-16 13:44

This no longer works in Xcode 8 beta 6:

let colors:CFArray = [fromColor.cgColor, toColor.cgColor]

or

let gradient:CGGradie         


        
相关标签:
1条回答
  • 2020-12-16 13:59

    It works if you add the cast as CFArray:

    let colors = [fromColor.cgColor, toColor.cgColor] as CFArray
    

    or you can add the cast in a call:

    let gradient = CGGradient(colorsSpace: CGColorSpaceCreateDeviceRGB(), colors:[fromColor.cgColor, toColor.cgColor] as CFArray, locations:[0.0, 1.0])!
    

    In Swift 3 (Xcode 8 beta 6), implicit casting to bridged types has been removed. In some cases, like this one, you will need to add explicit casting to make it work.

    0 讨论(0)
提交回复
热议问题