【Unity】 HTFramework框架(七十)MultiChoiceDropdown可多选的下拉菜单

更新日期:2026年8月10日。

Github 仓库:https://github.com/SaiTingHu/HTFramework

Gitee 仓库:https://gitee.com/SaiTingHu/HTFramework

索引

一、MultiChoiceDropdown可多选的下拉菜单

众所周知Dropdown下拉菜单控件是不支持多选的,但多选的下拉菜单 在很多场景里是有需求的,所以MultiChoiceDropdown(可多选的下拉菜单)应运而生。

二、使用MultiChoiceDropdown

1.快捷创建MultiChoiceDropdown

首先,在Hierarchy窗口点击鼠标右键,通过菜单HTFramework -> UI -> MultiChoice Dropdown快捷创建一个MultiChoiceDropdown组件:

MultiChoiceDropdownDropdown基本一致,但前者并非继承至后者:

2.MultiChoiceDropdown的属性

MultiChoiceDropdown的属性如下:

Values:当前选中的选项(索引)。

Separator:当前选中的多个选项内容之间的间隔符。

MultiChoiceDropdownDropdown不同的主要就是如上两个属性,因为前者是多选,所以后者的属性value不再有效,前者有自己的方式来增加新的选中项。

3.增加选中项

使用索引来增加新的选中项(会与旧的选中项混合):

csharp 复制代码
		//按【索引】增加选中项:索引为0,1,2的三个选项
        dropdown.AddSelectionIndexs(new List<int>() { 0, 1, 2 });

在上一步基础上,也可使用内容来增加新的选中项(会与旧的选中项混合):

csharp 复制代码
        //按【内容】增加选中项:内容为C,D,E的三个选项
        dropdown.AddSelectionValues(new List<string>() { "C", "D", "E" });

4.移除选中项

使用索引来移除选中项:

csharp 复制代码
        //按【索引】移除选中项:索引为3,4的两个选项
        dropdown.RemoveSelectionIndexs(new List<int>() { 3, 4 });

也可使用内容来移除选中项:

csharp 复制代码
        //按【内容】移除选中项:内容为A的选项
        dropdown.RemoveSelectionValue("A");

5.清空所有选中项

使用如下方式清空所有选中项,以便于重新赋值:

csharp 复制代码
        dropdown.ClearIndexs();

6.Options可选项

Options可选项的管理方式与Dropdown基本一致,可在Inspector面板事先预制,也可通过代码动态添加:

csharp 复制代码
        //清空所有可选项
        dropdown.ClearOptions();
        //添加多个可选项
        dropdown.AddOptions(new List<string>() { "A", "B", "C", "D", "E" });
        //options:获取当前的所有可选项
        for (int i = 0; i < dropdown.options.Count; i++)
        { 
        
        }
相关推荐
WiChP5 小时前
【V0.1B15】从零开始的2D游戏引擎开发之路
游戏引擎
zhchyun20082 天前
# 【Unity UI 进阶】仿 Element UI 打造企业级 Unity UI 组件库(06)
ui·unity·游戏引擎
Behaviour2 天前
Unity游戏HybridCLR 热更新接入实战
游戏·unity·游戏引擎
LONGZETECH2 天前
新能源汽车动力电池实训教学痛点与虚拟仿真技术解决方案
c语言·3d·unity·架构·汽车·汽车教学软件
王维志2 天前
UiSplineRenderer
unity·游戏引擎
k4m7v2pz3 天前
Godot 4 仿 agar.io:相机缩放被 max_zoom 卡死,窗口越大球越小的根因与修复
游戏引擎·godot·相机·缩放·clamp·camera2d
FairGuard手游加固3 天前
iOS 游戏加固技术解析:代码混淆、资源加密、内存保护与重签名检测
安全·游戏·macos·unity·ios·objective-c
k4m7v2pz3 天前
Godot 4 窗口拉伸黑边与变形:stretch 配置全解析
数码相机·游戏引擎·godot·2d游戏·黑边·stretch·画面比例
UWA4 天前
GPM 2.0 WebGL 监测能力扩容|覆盖 Unity/Cocos/LayaAir 多引擎微信 & 抖音小游戏
unity·微信·性能优化·小游戏·webgl
Behaviour4 天前
Unity 手游网络同步技术
网络·unity·c#·游戏引擎