首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >具有类数组的SKNode子

具有类数组的SKNode子
EN

Stack Overflow用户
提问于 2015-02-12 13:19:53
回答 1查看 120关注 0票数 1

我正在尝试编写一个方法来查找属于特定类的SKNode的子类,但是我在这里得到了一个EXC错误

有人知道为什么会这样吗?

代码语言:javascript
复制
import SpriteKit

extension SKNode {
  func children(#klasses: [AnyClass]) -> [SKNode] {
    var matchedNodes = [SKNode]()
    for child in children as [SKNode] {
      for klass in klasses {
        if child.isKindOfClass(klass) {
          matchedNodes.append(child)
        }
      }

      matchedNodes += child.children(klasses: klasses)
    }
    return matchedNodes
  }

}

class Apple: SKNode {}
class Orange: SKNode {}

let apple = Apple()
let orange = Orange()

apple.addChild(orange)

let fruits = apple.children(klasses: [Apple.self, Orange.self])

错误:

执行被中断,原因: EXC_BAD_INSTRUCTION (code=EXC_i386_INVOP,subcode=0x0)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-12 14:10:36

试试这段代码

代码语言:javascript
复制
extension SKNode {
    func children(#klasses: [AnyObject]) -> [SKNode] {
        var matchedNodes = [SKNode]()
        for child in children as [SKNode]{
            for klass in klasses {
                if child.dynamicType === klass {
                    matchedNodes.append(child)
                }
            }
            matchedNodes += child.children(klasses: klasses)
        }
        return matchedNodes
    }
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28478506

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档