これは、いずれかのプロパティとしてSKLabelNodeを設定する方法の例ですローカルで、そしてacceこれらの変数以降のコードでは、SS:プロパティの場合
import SpriteKit
class GameScene: SKScene {
let label = SKLabelNode(fontNamed: "ArialMT")
override func didMoveToView(view: SKView) {
label.text = "This is a label defined as a property of scene";
label.fontSize = 35;
label.fontColor = .blackColor()
label.position = CGPoint(x:frame.midX, y:frame.midY)
addChild(label)
let anotherLabel = SKLabelNode(fontNamed: "ArialMT")
anotherLabel.text = "This is a label defined localy and added to a node tree"
anotherLabel.name = "anotherLabel"
anotherLabel.fontSize = 35;
anotherLabel.fontColor = .whiteColor()
anotherLabel.position = CGPoint(x:frame.midX, y:frame.midY - 100.0)
addChild(anotherLabel)
}
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
self.label.text = "Your text"
if let anotherLabel = childNodeWithName("anotherLabel") as? SKLabelNode {
anotherLabel.text = "Your text"
}
}
}
、アクセスがself.label.text = "..."
同じくらい簡単です。ノードツリーに追加されたローカル変数の場合は、後でchildNodeWithName
メソッドを使用してnameプロパティを使用して検索します。
このエラーについての詳しい情報が必要な場合は、このコードが配置されている場所の詳細を入力してください(例:シーン/他のクラスのプロパティ、間違っている、または一部のメソッドでローカルに定義されています等)。 – Whirlwind
@Whirlwind基本的に私はGameSceneクラスの中に行を置いています。私は他の変数と定義も入れています。しかし、私は次のようなことをする機会を探しています:scoreLabel.text = "3" – boehmatron
私はタイマーの設定を別の関数に入れて "didMove"に呼び出しました。 – boehmatron