Toggle には画像とラベルが含まれます。Button などの標準的な UI Toolkit コントロールと同様に、Toggle にも、MouseUpEvent
と PointerUpEvent
に登録される Clickable マニピュレーターが設定されています。これらのイベントのいずれかがマニピュレーターをトリガーすると、Toggle の値が true から false に、または false から true に変更されます。Toggle の現在の値は読み取ったり設定したりできます。また、Toggle をブール変数にバインドすることも可能です。
デフォルトでは、Toggle コントロールはチェックボックスとして表示されます。スタイルを適用することで、一般的なトグルスイッチのような見た目にすることもできます。
ドロップダウンからの選択や有効にされたオプションなどの、他の条件に基づいて、要素を表示または非表示にすることができます。Unity のカメラ Inspector も条件付き UI の一例です。これは Physical Camera モードを有効にすると追加のオプションを表示します。
Note: To align an element with other fields in an Inspector window, simply apply the .unity-base-field__aligned
USS class to it. For more information, refer to BaseField
.
You can create a Toggle with UI Builder, UXML, or C#.
The following C# examples creates a Toggle with a specific label:
Toggle myToggle = new Toggle("Click me");
The following UXML example creates a Toggle:
[!code-xml[(External/Resources/editor_resources/Assets/Editor Default Resources/UIPackageResources/Snippets/UXML/ToggleSnippet.uxml)]
The following C# example illustrates some of the customizable functionalities of the Toggle:
[!code-cs[(Modules/UIElementsSamplesEditor/Snippets/ToggleSnippet.cs#sample)]
To try this example live in Unity, go to Window > UI Toolkit > Samples.
For more examples, refer to the following:
C# クラス: Toggle
名前空間: UnityEngine.UIElements
基本クラス: BaseBoolField
この要素は基本クラスから以下の属性を継承します。
名前 | 型 | 説明 |
---|---|---|
binding-path |
string |
バインドされるべきターゲットプロパティのパス。 |
focusable |
boolean |
要素がフォーカス可能である場合は true。 |
label |
string |
フィールドの横に表示されるラベルを表す文字列。 |
tabindex |
int |
フォーカスリング内でフォーカス可能なものをソートするために使用される整数。0 以上であることが必要です。 |
text |
string |
BaseBoolField の後に表示されるオプションのテキスト。Label が存在しない場合は、Unity が自動的に Label を作成します。 |
value |
boolean |
フィールドに関連付けられた値。 |
この要素は、VisualElement
から以下の属性も継承します。
名前 | 型 | 説明 |
---|---|---|
content-container |
string |
子要素はそれに追加されますが、通常は要素自体と同じです。 |
data-source |
Object |
Assigns a data source to this VisualElement which overrides any inherited data source. This data source is inherited by all children. |
data-source-path |
string |
Path from the data source to the value. |
name |
string |
この VisualElement の名前。 このプロパティを使用して、特定の要素を対象とする USS セレクターを記述します。要素には一意の名前を付けるのが標準的です。 |
picking-mode |
UIElements.PickingMode |
mouseEvents または IPanel.Pick クエリの間にこの要素を選択 (ピック) できるかどうかを決定します。 |
style |
string |
この要素のスタイルオブジェクトへの参照。 C# でこのオブジェクトに書き込まれた USS ファイルまたはインラインスタイルから計算されたデータが含まれます。 |
toolbar |
string |
ユーザーが要素をマウスオーバーした後、わずかな時間、情報ボックス内に表示するテキスト。これはエディター UI でのみサポートされます。 |
usage-hints |
UIElements.UsageHints |
VisualElement の高レベルの使用パターンを指定するヒント値の組み合わせ。このプロパティは、VisualElement がまだ Panel の一部でない場合にのみ設定できます。Panel の一部になると、このプロパティは事実上読み取り専用となり、変更しようとすると例外がスローされます。適切な UsageHints を指定することで、予想される使用パターンに基づいて、特定の操作をどのように処理するか、または高速化するかについて、システムがより適切な判断を下すようになります。これらのヒントは動作や視覚的な結果には影響しませんが、パネルとその中の要素の全体的なパフォーマンスにのみ影響することに注意してください。常に適切なUsageHints を指定することを考慮することをお勧めしますが、特定の条件下 (例えば、ターゲットプラットフォームのハードウェア制限など) では、いくつかの UsageHints が内部的に無視される可能性があることに留意してください。 |
view-data-key |
string |
Used for view data persistence, such as tree expanded states, scroll position, or zoom level. This key is used to save and load the view data from the view data store. If you don’t set this key, the persistence is disabled for the associated VisualElement . For more information, refer to View data persistence. |
以下の表は、すべての C# パブリックプロパティ名と、それに関連する USS セレクターのリストです。
C# プロパティ | USS セレクター | 説明 |
---|---|---|
ussClassName |
.unity-toggle |
Toggle 要素の USS クラス名。 Unityはこの USS クラスを Toggle 要素の全てのインスタンスに追加します。このクラスに適用されたスタイル設定は、ビジュアルツリーのスタイルシートの横または下にある全ての Toggle に影響します。 |
labelUssClassName |
.unity-toggle__label |
Toggle 要素の Label の USS クラス名。 Unity は、Toggle に Label がある場合に、この USS クラスを Toggle の Label サブ要素に追加します。 |
inputUssClassName |
.unity-toggle__input |
Toggle 要素 の入力要素の USS クラス名。 Unity はこの USS クラスを Toggle の入力サブ要素に追加します。入力サブ要素はマニピュレーターに応答を提供します。 |
noTextVariantUssClassName |
.unity-toggle--no-text |
テキストを持たない Toggle 要素の USS クラス名。 Unityは、Toggle にラベルがない場合に、この USS クラスを Toggle に追加します。 |
checkmarkUssClassName |
.unity-toggle__checkmark |
Toggle 要素 の Image の USS クラス名。 Unity はチェックマーク画像を持つ Toggle の Image サブ要素にこの USS クラスを追加します。 |
textUssClassName |
.unity-toggle__text |
Toggle 要素 の Text 要素の USS クラス名。 Unity はこの USS クラスを Toggle の Text サブ要素に追加します。 |
mixedValuesUssClassName |
.unity-toggle__mixed-values |
値が混在する Toggle 要素の USS クラス名。 Unity は、値が混在する Toggle のチェックマークにこの USS クラスを追加します。 |
ussClassName |
.unity-base-field |
この型の要素の USS クラス名。 |
labelUssClassName |
.unity-base-field__label |
この型の要素のラベルの USS クラス名。 |
inputUssClassName |
.unity-base-field__input |
この型の要素の入力要素の USS クラス名。 |
noLabelVariantUssClassName |
.unity-base-field--no-label |
ラベルがない場合の、この型の要素の USS クラス名。 |
labelDraggerVariantUssClassName |
.unity-base-field__label--with-dragger |
この型の要素にドラッガーがアタッチされている場合のラベルの USS クラス名。 |
mixedValueLabelUssClassName |
.unity-base-field__label--mixed-value |
混合値を示す要素の USS クラス名 |
alignedFieldUssClassName |
.unity-base-field__aligned |
インスペクター要素で整列される要素の USS クラス名 |
disabledUssClassName |
.unity-disabled |
ローカルで無効にされた要素の USS クラス名。 |
また、Inspector や UI Toolkit Debugger の Matching Selectors セクション を使用して、どの USS セレクターが VisualElement
のコンポーネントに影響するかを、階層のすべてのレベルで確認することもできます。