2016-03-20 9 views
0

私はTextButtonを持っています。私はそれを無効にしたいと思います。 私はデフォルトのスキンを使用しています。アクターの無効な外観を設定する方法

私がいることを学びました:

  • setDisabled私はuiskin.jsonファイルをチェックし、それが唯一のupdown状態とについては何も定義されて何も
  • setTouchable(Touchable.disabled)作品を行いますが、外観

で何もしません無効状態:

com.badlogic.gdx.scenes.scene2d.ui.TextButton$TextButtonStyle: { 
    default: { down: default-round-down, up: default-round, font: default-font, fontColor: white }, 
    toggle: { down: default-round-down, up: default-round, checked: default-round-down, font: default-font, fontColor: white, downFontColor: red } 
}, 

どうすればよいですか?新しいスタイルを作成し、それを無効にしたらボタンに適用しますか?または、私が使用すべきビルトイン状態がありますか?

答えて

2

新しいスタイルを作成するか、既存のスタイルを追加します。 disabledという背景ドロワブルとdisabledFontColorのフォントカラーを定義できます。あなたのスタイルからこれらのいずれかを省略すると、setDisabledを呼び出すと、その特定の要素は変更されません。

+0

これらの名前は必須ですか?なぜ彼らはデフォルトのスキンファイルにスタイルを入れませんでしたか? – Nestor

+0

これらはオプションで、例外を発生させることなくそれらを放置することができます。 "デフォルト"のスタイルは本当にデフォルトではありませんか?それをコピーしてプロジェクトに貼り付ける必要があります。それは完全な皮膚から遠いです。そこにはたくさんのものがありません。 – Tenfour04

+0

特定のウィジェットのスタイルに対して何が設定できるのかを知りたい場合は、そのスタイルのJavadocページまたはソースコードを見てください。 – Tenfour04

0
  • setDisabled Work!

外観が突然変更されていないのは、skin.JSONファイル内の無効なボタンの状態をプログラムで設定していないためです。

Cobolfooは、libGDXで使用するスキンエディタを作成しました。最後のコミットは2年前ですが、以来何も変わっておらず、スキンエディタは完璧に動作するはずです。

Skin-Editor on github

私は非常ので、スキンファイルをいじることは芋時間の無駄である、あなたはそれを見てとることをお勧めします。

+0

'setDisabled'だけが使用されている場合、clickイベントはまだ起動されているので、' setTouchable'を使用しなければなりませんでした。 – Nestor

関連する問題