2016-06-23 4 views
0

Здесь я пытаюсь нарисовать gridLines для сетки, граница которой я успешно создал как SKShapeNode, однако я не могу заставить строки быть видимыми при запуске этого кода.SKShapeNode (путь: путь) не нарисовал

func drawGridLines() { 
     print("drawing") 
     for row in 0...40 { 
      let path = CGPathCreateMutable() 
      CGPathMoveToPoint(path, nil, grid.frame.origin 
       .x , grid.frame.origin.y + CGFloat(row * 10)) 
      CGPathAddLineToPoint(path, nil, grid.frame.width, grid.frame.origin.y + CGFloat(row * 10)) 
      let shape = SKShapeNode(path: path) 
      shape.path = path 
      shape.position = CGPoint(x: CGRectGetMidX(frame), y: CGRectGetMidY(frame)) 
      shape.fillColor = UIColor.redColor() 
      shape.strokeColor = UIColor.blueColor() 
      shape.lineWidth = 10 
      addChild(shape) 

      for col in 0...90 { 
       print("y") 
      } 
     } 
    } 

ответ

0

Я скопировал ваш код в свой проект и запустил, я отчетливо вижу эти синие линии сетки. Однако у меня нет переменной grid, поэтому я меняю ее на self, которая равна SKScene. Поэтому я думаю, что у вас есть некоторые проблемы с этим grid, может быть, это вне экрана. Поместите больше кодов об этом или измените это самостоятельно, попробуйте несколько тестов.

enter image description here

+0

Agh! было что-то в переменной сетки. Спасибо bruv –

+0

@HyakubEdwardHerring Приятно слышать, не могли бы вы принять ответ? –

+0

Этот код работает только при вызове self.frame. Это, к сожалению, вам нравится, как этого избежать. @ Valar Morghulis shape.position = CGPoint (x: CGRectGetMidX (кадр), y: CGRectGetMidY (кадр)) –

Смежные вопросы