問題タブ [sklabelnode]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
190 参照

ios - SKLabelNode 配列スプライト キットで数字の個別の数字を表示する

(スプライト キット ゲームで) スコアの桁を分離し、それらを SKLabelNodes に個別に表示する必要があります。これは可能ですか?sklabelnode の変更可能な配列を作成する必要があるかもしれませんが、そうすることができません。私が今まで達成したことはこれです:-

桁を分けました。それらを別々の SKLabelNodes に表示する方法がわかりません。ヘルプ?

0 投票する
2 に答える
223 参照

ios - 複数の SKLabelNode をベースラインで整列

のコレクションを持っていSKLabelNodesます。各ノードは、単語の文字を表します。各ノードは の子ですSKSpriteNode。にはspriteNode明示的な高さ ( によって返される高さ[text sizeWithAttributes:@{NSFontAttributeName : font}];) が設定されており、幅は と同じlabelNodeです。

はのlabelNode内側に中央揃えされ、spriteNodeがありますverticalAlignmentMode = SKLabelVerticalAlignmentModeBaseline。後の段階で、各文字に背景画像を設定する必要があります (これは を使用して行いますspriteNode)。テスト目的で、無地を使用して問題を明らかにしています。

ここに画像の説明を入力

ご覧のとおり、文字「y」の下の部分がコンテナの下に表示されていspriteNodeます。'g' やその他の文字でも同じことが起こります。また、それぞれletterNode(つまり、spriteNodeand child labelNode) は垂直方向に中央に配置され、別の 内で水平方向に間隔をあけて配置されSKSpriteNode、単語のすべての文字を格納するために使用されることも説明する必要があります。

を作成するコードletterNode:

単語のSKSpriteNodeすべての文字を含む は次のように作成されます。

この問題は、 and の配置および/またはサイズ変更の方法によって引き起こされていると思いlabelますspriteNodesverticalAlignmentModes別の を使用して、それに基づいてラベルの位置を変更しようとしましたが、すべて役に立ちませんでした。テキストのベースラインに基づいてノードを整列させる方法を知っていれば、それが出発点になります。

私が望んでいるのは、灰色の背景が下に伸びて「y」の下部を覆い、それがすべて letterNodesで起こることです(「y」のように必要かどうかに関係なく)。また、テキストがベースラインによって整列されるようにします。

どんな助けでも大歓迎です、

前もって感謝します。

0 投票する
1 に答える
369 参照

ios - SKLabelNode は、テキストの長さに応じて fontSize を設定します

テキスト全体を表示できるように、SKLabelNode の fontSize を動的な値に設定して、最大許容値にすることは可能ですか。

0 投票する
2 に答える
2427 参照

swift - ノードが開始された後に SKLabelNode の色を更新する方法は?

Swift コードに SKLabelNode があります。SKAction 中にラベルの色を変更する必要があります。単に:

うまくいきません。どうにかしてノードを更新する必要がありますが、どうすればよいですか? 私は Swift と Sprite Kit の初心者です。

0 投票する
2 に答える
2768 参照

ios - SpriteKit ラベル ノードが表示されない

奇妙な問題があります。プロジェクトの 1 つでラベル ノードを使用しています。前回はカスタム フォントを追加していましたが、その瞬間からラベル ノードが正しく機能しません。ラベルにフォントを設定すると (このテキストの下の例のように)、ラベルは画面に表示されませんが、アプリは正常に動作します。ボタンをクリックしてゲームを開始すると、ゲームビューのロードにも時間がかかります (フォントがロードされていると思いますか?):

しかし、ラベルにフォントを設定しないと、アプリがクラッシュして警告が表示されます。

ここで、フォントに問題がある人からの投稿をたくさん読みました。しかし、私は似たようなものを見つけることができません。

エラーが表示されるコード (ストップウォッチ ノードに関数を呼び出して表示):

ストップウォッチ スプライトは .h ファイルで宣言されています。

0 投票する
1 に答える
1945 参照

ios - SKAction.colorizeWithColor は SKLabelNode を非表示にします

私はSKLabelNodeを使用しています。私はそれを作成して子としてシーンに追加し、問題なく表示されますが、colorizeWithColor() メソッドで色 (fontColor ではない) を変更しようとすると、ラベルがフェードアウトします。

問題のある行は次のとおりです。

このアクションの完了後に myLabel.color プロパティをコンソールに出力したところ、次のようになりました。

ご覧のとおり、アルファ値はほぼ 0 であるため、ラベルが消えているのはこのためだと思いますが、なぜこれが起こっているのかわかりません。

前もって感謝します。

更新:わかりましたので、実際にこれを見つけました。質問する前に検索しなかったのは私の悪いことです。colorizeWithColor メソッドに関するドキュメントは次のとおりです。

このアクションは、SKSpriteNode オブジェクトによってのみ実行できます。アクションが実行されると、スプライトの color プロパティと colorBlendFactor プロパティが新しい値にアニメーション化されます。

だから、常に更新されている SKLabelNode を色付けするための良い回避策を誰かが知っているでしょうか?

!!!最後の更新!!!

私は解決策を見つけることができましたが、0x141E はさらに優れた解決策を思いつきました。それを使用して、色 A から色 B に移行する必要があるときにうまく機能する次の方法を作成しました。 fontColor に戻ると、色を変更すると点滅します。私の場合、それは color プロパティではなく fontColor を変更します。

本当に素晴らしいアプローチをしてくれた0x141Eに再び感謝します!!!

これが私の解決策です:

この特定のケースは、パラメーター withDuration = 0.5 のメソッドを呼び出すときにうまく機能します。ただし、他の時間が必要な場合は、送信された withDuration パラメーターまたは乗数をいじることができます。私のコードでは 5 です。解決策なので、見つけたら共有してください。私のニーズでは、これは素晴らしい作品です。

まず最初に、動画でその仕組みを確認してください: https://www.youtube.com/watch?v=ZIz8Bn0-hUA&feature=youtu.be