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

TMP Dropdown

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

Properties

PropertyTypeDescription
valueintドロップダウン内で選択されている要素のインデックスを取得または設定します。
IsExpandedboolドロップダウンが展開されているかどうかを示す値を取得します。
enableboolアタッチされたコンポーネントの有効/無効を切り替えます。

Methods

FunctionInputOutputDescription
SetValueWithoutNotifyintvoidonValueChanged を呼び出さずに、入力フィールドの値を設定します。
RefreshShownValue現在選択されているオプションのテキストと画像(存在する場合)を更新します。
ClearOptionsドロップダウンからすべてのオプションを削除します。
Showドロップダウンを表示します。画面内にドロップダウンが収まるよう、スクロールを考慮して配置してください。TMPは、Canvasをドロップダウンが収まるべき画面領域として想定しています。
Hideドロップダウンリストを非表示にします。

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

VRCTMPDropdownExtension

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

FunctionInputOutputDescription
AddOptionsTMP_Dropdown,
string[]
文字列の配列をドロップダウンに追加します。
AddOptionsTMP_Dropdown,
sprite[]
スプライトの配列をドロップダウンに追加します。
AddOptionsTMP_Dropdown,
OptionData[]
Adds the array of TMP_Dropdown.OptionData to the dropdown.
Extension method

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

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

TMP_Dropdown.OptionData

これは TextMesh Pro に組み込まれています。これにより、文字列とスプライトを組み合わせてドロップダウンに追加できます。

FunctionsInputOutputDescription
ConstructorstringOptionDataテキストをオプションとして持つ OptionData オブジェクトを作成します。
ConstructorspriteOptionDataスプライトをオプションとして持つ OptionData オブジェクトを作成します。
Constructorstring, spriteOptionDataテキストとスプライトをオプションとして持つ OptionData オブジェクトを作成します。

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

ドロップダウンでは、各オプションに対して異なるスプライトを表示できます。ドロップダウンを正しく設定してください:

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

Add an image to the dropdown hierarchy, moving the label out of the way - part 1 part 2

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

テンプレートのヒエラルキーに画像を追加し、ラベルを移動させます - パート1 パート2

  1. ドロップダウンの Caption Image および Item Image フィールドに適切な参照を追加します。

パート2

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

最終更新: