我有一个ACCreateObject类。他们有一个功能circlePhysicsDefault。 我想通过按下Button来调用此函数的其他文件。 在GameViewController中我输入:
@IBAction func addOneCircle(sender: AnyObject) {
ACCreateObject.circlePhysicsDefault(ACCreateObject)
}
但我有一个问题:'(ACCreateObject).Type'不能转换为'ACCreateObject'。我怎么称呼这个功能? 怎么了?
谢谢!
ACCreateObject.swift
class ACCreateObject: SKScene {
func circlePhysicsDefault() {
var Circle = SKShapeNode(circleOfRadius: 40)
Circle.position = CGPointMake(500, 500)
Circle.name = "defaultCircle"
Circle.strokeColor = SKColor.blackColor()
Circle.glowWidth = 10.0
Circle.fillColor = SKColor.yellowColor()
Circle.physicsBody = SKPhysicsBody(circleOfRadius: 40)
Circle.physicsBody.dynamic = true
self.addChild(Circle)
}
}
答案 0 :(得分:3)
您正在类对象上调用实例方法。你有两个解决方案:
创建一个新实例并调用它的方法
ACCreateObject().circlePhysicsDefault()
OR
使它成为一个类功能
// In your class file
class func circlePhysicsDefault() {
....
}
然后打电话 ACCreateObject.circlePhysicsDefault()
答案 1 :(得分:0)
不确定我是否理解你,但是你所说的你想要在类型上调用一个方法而不是一个对象
首先想到的是:
var x = ACCreateObject()
x.circlePhysicsDefault()
我认为这是你应该这样做的方式。我知道有一个类circlePhysicsDefault的选项