相关疑难解决方法(0)

超类方法在swift中返回子类类型

我有这个代码:

class Dark: NSObject {
  class var className: String {
    return NSStringFromClass(self)!.componentsSeparatedByString(".").last!
  }

  var success = 0

  class func devour<T: Dark>(params: Int) -> T {
    var s = T()
    return assign(s, params: params)
  }

  class func assign<T: Dark>(item: T, params: Int) -> T{
    if item.dynamicType === self {
      item.success = params
    }
    return item
  }
}

class Black: Dark {
}

class Violet: Dark {
}

Black.className // returns "Black"
Violet.className // returns "Violet"
Run Code Online (Sandbox Code Playgroud)

我这样做时会出现问题:

var ret = Black.devour(5)
ret.success …
Run Code Online (Sandbox Code Playgroud)

iphone mobile ios swift

9
推荐指数
1
解决办法
4827
查看次数

无法使用unarchiveFromFile在SpriteKit中设置GameScene

我正在使用Xcode 7 beta 2并关注raywenderlich.com的Breakout教程来学习SpriteKit.这是我尝试使用unarchiveFromFile加载GameScene时出现的错误.

GameScene.type没有名为unarchiveFromFile的成员.

这是代码:

func didBeginContact(contact: SKPhysicsContact) {
    // 1. Create local variables for two physics bodies
    var firstBody: SKPhysicsBody
    var secondBody: SKPhysicsBody

    // 2. Assign the two physics bodies so that the one with the lower category is always stored in firstBody
    if contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask {
        firstBody = contact.bodyA
        secondBody = contact.bodyB
    } else {
        firstBody = contact.bodyB
        secondBody = contact.bodyA
    }

    // 3. react to the contact between ball and bottom
    if firstBody.categoryBitMask == BallCategory …
Run Code Online (Sandbox Code Playgroud)

sprite-kit swift xcode7-beta2

0
推荐指数
1
解决办法
1460
查看次数

标签 统计

swift ×2

ios ×1

iphone ×1

mobile ×1

sprite-kit ×1

xcode7-beta2 ×1