ios - 快速创建井字游戏网格?
问题描述
嗨,我正在尝试快速制作井字游戏,并且在设置网格时,我遇到了以下代码的 SIGBRT 错误:
func setUp() {
for i in -1...1 {
let XO = SKSpriteNode()
XO.size = CGSize(width: self.frame.size.width / 3 - 30, height: self.frame.size.width / 3 - 30)
let W = XO.frame.size.width / 2 - 5
let y = W * CGFloat(i)
for j in -1...1 {
let x = W * CGFloat(j)
XO.name = "Blank"
XO.position = CGPoint(x: self.frame.size.width / 2 + x, y: self.frame.size.height / 2 + y)
XO.texture = SKTexture(imageNamed: "X")
self.addChild(XO) // error traced back to here
}
}
}
有没有人有任何想法我可以解决它?
解决方案
你是说:
func setUp() {
for i in -1...1 {
let XO = SKSpriteNode()
for j in -1...1 {
self.addChild(XO) // error traced back to here
}
}
}
所以第一次通过j
你的循环addChild(XO)
,然后第二次通过j
你再次尝试的循环addChild(XO)
——同样的 XO。你不能添加一个已经添加的孩子,所以kaboom。
推荐阅读
- dafny - 如何证明将集合转换为序列并返回是dafny中的一个身份
- android - 使用 FirebaseUI 将子集合中的数据放入第二个布局中
- node.js - Socket:当房间中的玩家关闭浏览器时,服务器如何正确地发射到该房间中的其他套接字?
- javascript - 如何获取自定义元素的内容
- c++ - std 函数通过 std 绑定对成员函数的引用
- mysql - MYSQL WHERE 字段在 GROUP_CONCAT()
- tensorflow - TensorFlow - 每个时代的时尚 MNIST 步骤
- vue.js - Vuex Action 永远不会解决
- deep-learning - pytorch“试图第二次通过图形向后”错误与字符级RNN
- database - Firestore:新集合与子集合