我有一个等距网格,其中包含用于我的iOS项目的图块,并且希望能够单击相应的图块。网格看起来像这样:
它是通过使用
绘制直线而创建的let path = UIBezierPath()
path.move(to: CGPoint(x:0, y:size.height / 2.0))
path.addLine(to: CGPoint(x:size.width / 2.0, y:0))
...等等,直到创建了一个等轴测图块。然后根据某种算法放置图块。
所有图块已存储在array
中,可以像这样访问:
gameBoardArray[4][3].fillColor = SKColor.brown
现在,我不确定如何实际按下(并用颜色标记)一个特定的图块。我想我应该使用函数
func touchDown(atPoint pos : CGPoint)
那又是什么?函数中的pos
显示您所按下位置的x
和y
位置,而print(gameBoard[0][0])
给出的坐标类似于{{-218.60400390625, -17.207000732421875}, {65.207000732421875, 34.415000915527344}}
。 (我不完全理解为什么有4个坐标。难道不应该只有一个坐标x和一个坐标y?)
我应该检查pos
坐标是否在gameBoard
坐标之内还是有更简单的方法?