3

プログラムでボタンを作成しようとしています。SKSpriteNode をサブクラス化し、その子の 1 つが SKLabelNode です。これを行った理由は、ラベルとボタンが一緒に移動し、1 つのユニットになるようにするためです。問題は、ボタンを拡大縮小すると、ラベルも拡大縮小され、テキストが歪んでピクセル化されて見えることです (かなりひどい)。ボタンだけを拡大縮小できるように、全体を書き直さなければならない場合でも、方法はありますか?

4

2 に答える 2

3

この質問を投稿する前に約1時間この回答を探しましたが、2番目に質問を投稿すると、答えが見つかりました...信じられない!

親 (SKSpriteNode) のサイズを設定すると、スプライトのサイズに影響しますが、子 (ラベル) には影響しません。コードは次のとおりです。

[button setSize:CGSizeMake(100, 200)]; //button is the SKSpriteNode

ラベルのテキストのサイズは、ボタンのサイズ変更とは別に変更できます。これにより、ボタンの位置とそのテキストはリンクされたままになりますが、サイズは個別に制御できます。まさに私が必要としていたもの。そもそも SKSpriteNode をサブクラス化するためのより良い解決策があるかもしれませんが、それらをリンクしたまま独立させるためのより良い方法は思いつきません。

于 2014-09-13T02:42:09.157 に答える
2

代替ソリューションを提供させてください。スプライトとラベルが親と子であると仮定すると、スプライトを拡大すると、次のようになります。

sprite.scale = 1.25;

子ラベルを同じ量だけ縮小するだけです。

label.scale = 0.75;
于 2014-09-13T07:57:55.730 に答える