Мое приложение для iOS не работает на устройствах

Я создаю небольшое игровое приложение для iOS, используя SpriteKit в Xcode. Он работает правильно на симуляторах, но в устройствах он не создает узлов. В коде, который я настроил для динамического создания узлов, он работает на симуляторе, но не работает на устройствах

На симуляторе введите описание изображения здесь

На устройствах введите описание изображения здесь

@objc func createRoadStrip(){
    let leftRoadStrip = SKShapeNode(rectOf: CGSize(width: 10, height: 60))
    leftRoadStrip.strokeColor = .white
    leftRoadStrip.fillColor = .white
    leftRoadStrip.position.x = -187
    leftRoadStrip.position.y =  700
    leftRoadStrip.zPosition = 10
    leftRoadStrip.alpha = 0.4
    leftRoadStrip.name = "leftRoadStrip"
    addChild(leftRoadStrip)

    let rightRoadStrip = SKShapeNode(rectOf: CGSize(width: 10, height: 60))
    rightRoadStrip.strokeColor = .white
    rightRoadStrip.fillColor = .white
    rightRoadStrip.position.x = 187
    rightRoadStrip.position.y =  700
    rightRoadStrip.zPosition = 10
    rightRoadStrip.alpha = 0.4
    rightRoadStrip.name = "rightRoadStrip"

    addChild(rightRoadStrip)

}



func moveRoadStrip(){
    enumerateChildNodes(withName: "leftRoadStrip") { (strip, stop) in
        let leftRoadStrip = strip as! SKShapeNode
        leftRoadStrip.position.y -= 40
    }

    enumerateChildNodes(withName: "rightRoadStrip") { (strip, stop) in
        let rightRoadStrip = strip as! SKShapeNode
        rightRoadStrip.position.y -= 40
    }

}

 override func update(_ currentTime: TimeInterval) {
   //here
    moveRoadStrip()
    moveTrafficCar()
    if(carCanMove){
        moveCar(toLeftSide: leftCarToMoveLeft)
        moveCar(toRightSide: rightCarToMoveRight)
    }
    removeItems()
}

Я вызываю Timer (создание дорожной полосы) в методе didMove и перемещаю дорожную полосу в функции обновления

 override func didMove(to view: SKView) {
    self.anchorPoint = CGPoint(x: 0.5, y: 0.5)
    physicsWorld.contactDelegate = self
    setUp()
    Timer.scheduledTimer(timeInterval: 0.2, target: self, selector: #selector(createRoadStrip), userInfo: nil, repeats: true)
}


override func update(_ currentTime: TimeInterval) {
   //here
    moveRoadStrip()
}

Версия моего устройства

  • iOS: 9.0, модель iPhone 6

0 ответов

Другие вопросы по тегам