小编Eth*_*ler的帖子

尝试使用Swift以编程方式创建等距网格

我以编程方式尝试此操作的唯一原因是我可以访问每个磁贴的位置,从而可以操作网格.我已经查看了大约15种使用其他编程语言的不同教程,但即使有了这些知识,我仍然很难在Swift中创建一个.

我已经尝试创建一个嵌套的for循环,但我甚至不确定循环中的代码是否具有创建等距网格的逻辑意义,我只是将其从我发现的其中一个教程中删除:

func generateGrid() {
    for (var i = 0; i < 5; i++) {
        for (var j = 5; j >= 0; j--){
            tile.position = CGPoint(x: (j * Int(tile.size.height) / 2) + 
                                       (i * Int(tile.size.width) / 2), 
                                    y: (i * Int(tile.size.height) / 2) - 
                                       (j * Int(tile.size.width) / 2))
            addChild(tile)
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

然后我尝试在"didMoveToView"函数中调用它,但显然你不能多次添加同一个节点.

请给我任何方向.

grid-layout tile isometric sprite-kit swift

5
推荐指数
2
解决办法
4064
查看次数

标签 统计

grid-layout ×1

isometric ×1

sprite-kit ×1

swift ×1

tile ×1