我正在使用Swift 3.在我的代码中,我在Wallet App中使用Siri集成。我在该App中收到错误。我在谷歌搜索它,但我没有找到它的解决方案。
这是我的代码:
func createPath(_ points: NSArray) -> UIBezierPath {
let path = UIBezierPath()
var point = CGPoint()
//CGPointMakeWithDictionaryRepresentation((points[0] as! CFDictionary), &point)
point.makeWithDictionaryRepresentation((points[0] as! CFDictionary)) // In this line I am getting an error
path.move(to: point)
var index = 1
while index < points.count {
//CGPointMakeWithDictionaryRepresentation((points[index] as! CFDictionary), &point)
point.makeWithDictionaryRepresentation((points[index] as! CFDictionary))
path.addLine(to: point)
index = index + 1
}
path.close()
return path
}
以下是我遇到的错误:
'CGPoint'类型的值没有成员'makeWithDictionaryRepresentation'
任何人都可以帮我解决。 在此先感谢。
答案 0 :(得分:1)
在Swift 3中,您需要使用init CGPoint(dictionaryRepresentation:)
。
let point = CGPoint(dictionaryRepresentation:points[0] as! CFDictionary)
它将返回可选CGPoint
个实例,以便与if let
或guard
if let point = CGPoint(dictionaryRepresentation:points[0] as! CFDictionary) {
print(point)
}
查看CGPoint
上的Apple文档了解详情。