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オブジェクトを作成します。 |
ドロップダウンにスプライトを追加する方法
ドロップダウンでは、各オプションに異なるスプライトを表示させることができます。そのために、ドロップダウンを適切に設定する必要があります。
- ドロップダウンに画像を追加します。

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

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

- これで完了です!ドロップダウンでスプライトが表示できるようになります。
最終更新: