VRChat 非公式日本語ドキュメント

TMP Dropdown

TMP_Dropdown は、クリックするとオプションのリストを表示し、その中から1つを選択できる標準的なドロップダウンです。Unityの従来の UI.Dropdown コンポーネントの代わりとして、常にこちらを使用してください。

プロパティ

プロパティ 説明
value int ドロップダウン内で選択されている要素のインデックスを取得または設定します。
IsExpanded bool ドロップダウンが展開されているかどうかを示す値を取得します。
enable bool アタッチされているコンポーネントを有効/無効にします。

メソッド

Function Input Output Description
SetValueWithoutNotify int void onValueChanged を呼び出さずに、入力フィールドの値を設定します。
RefreshShownValue 現在選択されているオプションのテキストおよび画像(利用可能な場合)を更新します。
ClearOptions ドロップダウンからすべてのオプションを削除します。
Show ドロップダウンを表示します。ドロップダウンが画面内に収まるようにスクロールを考慮してください。TMPでは、ドロップダウンが収まるべき画面としてCanvasを想定しています。
Hide ドロップダウンリストを非表示にします。

関連クラス

Udonでは、TMP_Dropdownに関連する2つの追加クラスにアクセスできます。

VRCTMPDropdownExtension

このクラスはVRChat SDKの一部です。ドロップダウンにオプションを追加するために使用します。

Function Input Output Description
AddOptions TMP_Dropdown,
string[]
文字列の配列をドロップダウンに追加します。
AddOptions TMP_Dropdown,
sprite[]
スプライトの配列をドロップダウンに追加します。
AddOptions TMP_Dropdown,
OptionData[]
TMP_Dropdown.OptionData の配列をドロップダウンに追加します。
Extension method

UdonSharpにおいて、AddOptionsは拡張メソッドです。

AddOptions(dropdown, options) と書く代わりに、dropdown.AddOptions(options) と記述できます。その際、ファイル内で名前空間 VRC.SDK3.Components をインポートしていることを確認してください。

TMP_Dropdown.OptionData

これはTextMesh Proに組み込まれているクラスです。ドロップダウンに文字列とスプライトの組み合わせを追加するために使用します。

Functions Input Output Description
Constructor string OptionData テキストをオプションとするOptionDataオブジェクトを作成します。
Constructor sprite OptionData スプライトをオプションとするOptionDataオブジェクトを作成します。
Constructor string, sprite OptionData テキストとスプライトの両方をオプションとするOptionDataオブジェクトを作成します。

ドロップダウンにスプライトを追加する方法

ドロップダウンでは、各オプションに異なるスプライトを表示させることができます。そのために、ドロップダウンを適切に設定する必要があります。

  1. ドロップダウンに画像を追加します。

ドロップダウンの階層に画像を追加し、ラベルの位置を移動する - パート1 パート2

  1. テンプレートに画像を追加します。

テンプレートの階層に画像を追加し、ラベルの位置を移動する - パート1 パート2

  1. ドロップダウンの Caption Image および Item Image フィールドに正しい参照を設定します。

パート2

  1. これで完了です!ドロップダウンでスプライトが表示できるようになります。

最終更新: