I have a UILabel
and a View
in a Stack View
inside of the ViewController
where I have a GameScene
in that same View
.
''''''''''''''' <- GameStartViewController
' L '
' ''''''''' ' L = UILabel
' ' V ' ' V = View Frame
' ' ' '
' ' ' '
' ' ' '
' ''''''''' '
' '
'''''''''''''''
I'm trying to update the label which is the score from inside the view but I keep getting
fatal error: unexpectedly found nil while unwrapping an Optional value
Even though it is connected, I can't change color, set text, etc...
Code:
GameScene.swift
var gs: GameStartViewController!
override func didMoveToView(view: SKView) {
physicsWorld.contactDelegate = self
self.backgroundColor = UIColor.feelFreeToColor()
gs.scoreLabel.text = "\(score)" // THIS DOES NOT WORK
}
GameStartViewController.swift
@IBOutlet weak var selfView: SKView!
@IBOutlet weak var scoreLabel: UILabel!
override func viewDidLoad() {
super.viewDidLoad()
self.view.backgroundColor = UIColor.feelFreeToColor()
self.initAdMobBanner()
let scene: GameScene = GameScene(size: view.bounds.size)
let skView = selfView
scene.scaleMode = .AspectFill
skView.presentScene(scene)
scoreLabel.layer.addBorder(UIRectEdge.Bottom, color: UIColor.blackColor(), thickness: 3) // THIS WORKS
}
I can edit it from the view controller, but can't inside the view frame. How do I access it from inside the view frame?