我正在努力同时学习斯威夫特和可可。我有一个子类nsview(实际上是nscontrol)。在这个子类中,我试图运行以下行:
self.convertPoint(aPoint: NSPoint(0.0, 0.0), fromView: self)
当我的代码中有这行代码时,会收到错误消息:
不明确地使用“convertpoint”
看起来在cocoa中,有两个重载的convertpoint方法与我在这里尝试使用的类型签名完全相同。我该如何解决这个模棱两可的问题?
最佳答案
有两件事你需要解决:
修正“含糊不清地使用convertPoint
”的方法只是删除aPoint:
参数名:
self.convertPoint(NSPoint(x: 0.0, y: 0.0), fromView: self)
相反,
NSPoint
的初始值设定项需要包含其属性名:NSPoint(x: 0.0, y: 0.0)
您可以通过尝试为您的
var
创建一个独立的NSPoint
来看到这一点,如下所示:var p = NSPoint(0.0, 0.0)
它会给您一个错误:“调用中缺少参数标签
x:y:
”关于objective-c - 不确定使用“convertPoint”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/26517554/