Unity DropDown 组件 详解

Unity版本 2022.3.13f1

Dropdown下拉菜单可以快速创建大量选项

一、 Dropwon属性详解

属性:功能:
Interactable此组件是否接受输入?请参阅 Interactable。
Transition确定控件以何种方式对用户操作进行可视化响应的属性。请参阅过渡选项。
Navigation确定控件顺序的属性。请参阅导航选项。
Template下拉列表的模板的矩形变换。请参阅以下说明。
Caption Text用于保存当前所选选项的文本的文本 (Text) 组件。(可选)
Caption Image用于保存当前所选选项的图像的图像 (Image) 组件。(可选)
Item Text用于保存列表项的文本的文本组件。(可选)
Item Image用于保存列表项的图像的图像组件。(可选)
Value当前所选选项的索引。0 代表第一个选项,1 代表第二个,依此类推。
Options可能选项的列表。可为每个选项指定一个文本字符串和一个图像。
On Value Changed用户单击了下拉列表中一个选项时调用的 UnityEvent。

二、创建下拉菜单

 首先我们来先创建一个下拉菜单 再Unity 的Hierarchy面板右键选择UI---->Dropdown - TextMeshPro

当然也可以选择Legacy里面的Dropdown 这里我们选择Dropdown-TextMeshPro

 下面是Dropdown在Hierarchy面板上的层次结构

我们增加一个背景到DropDown下面作为背景展示

 然后将此背景和item的背景拖拽到Dropdown组件对应的位置上面如下图所示

三、下拉菜单组件代码调用

using System.Collections;
using System.Collections.Generic;
using TMPro;
using UnityEngine;public class Test : MonoBehaviour
{public TMP_Dropdown m_Dropdown;public List<Sprite> m_Sprites;public List<string> m_TextTip;public int m_CreateTemp;private TMP_Dropdown.OptionData m_OptionData;private int lastIndex = 0;void Start(){InitDorpDown();}private void InitDorpDown(){m_Dropdown.options.Clear();for (int i = 0; i < m_CreateTemp; i++){m_OptionData = new TMP_Dropdown.OptionData();m_OptionData.text = m_TextTip[i];m_OptionData.image = m_Sprites[i];m_Dropdown.options.Add(m_OptionData);}//设置默认显示m_Dropdown.captionText.text = m_TextTip[0];m_Dropdown.captionImage.sprite = m_Sprites[0];m_Dropdown.onValueChanged.AddListener(OnChanged);}private void OnChanged(int index){if (index == lastIndex) return;lastIndex = index;Debug.Log(index);}
}

 外部引用挂载

四、实际测试效果 

这里是实际图片的问题上下有空白换成不留空白的图就好了

点击效果

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/275764.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

没有硬件基础可以学单片机吗?

没有硬件基础可以学单片机吗&#xff1f; 在开始前我分享下我的经历&#xff0c;我刚入行时遇到一个好公司和师父&#xff0c;给了我机会&#xff0c;一年时间从3k薪资涨到18k的&#xff0c; 我师父给了一些 电气工程师学习方法和资料&#xff0c;让我不断提升自己&#xff0c…

AHU 人工智能实验-CCA

神经网络覆盖算法——CCA&#xff08;基于Ling Zhang 和Bo Zhang论文) Abstract 在这篇文章中我将介绍基于张铃和张钹学者提出的CCA算法&#xff0c;并实现代码复现&#xff0c;给出使用的数据集&#xff0c;以及实验结果对比。 1. Introduction 1.1 Background 我们知道自…

Go语言简介

一.Go语言简介 1.1 优点 自带gc静态编译&#xff0c;编译好后&#xff0c;扔服务器直接运行简单思想&#xff0c;没有继承&#xff0c;多态和类等丰富的库和详细开发文档语法层支持并发&#xff0c;和拥有同步并发的channel类型&#xff0c;使并发开发变得非常方便简洁语法&am…

Oracle with as用法

一、简介 with…as关键字&#xff0c;是以‘with’关键字开头的sql语句&#xff0c;在实际工作中&#xff0c;我们经常会遇到同一个查询sql会同时查询多个相同的结果集&#xff0c;即sql一模一样&#xff0c;这时候我们可以将这些相同的sql抽取出来&#xff0c;使用with…as定…

中国(京津冀)太阳能光伏推进大会暨展览会

中国(京津冀)太阳能光伏推进大会暨展览会是一个旨在促进太阳能光伏行业发展的会议和展览会。该事件旨在推动中国在太阳能光伏领域的创新和发展&#xff0c;特别是在京津冀地区。 会议将邀请来自政府、企业、学术界和国际组织的专家和代表&#xff0c;共同探讨太阳能光伏技术、政…

【Redis系列】深入了解 Redis:一种高性能的内存数据库

&#x1f49d;&#x1f49d;&#x1f49d;欢迎来到我的博客&#xff0c;很高兴能够在这里和您见面&#xff01;希望您在这里可以感受到一份轻松愉快的氛围&#xff0c;不仅可以获得有趣的内容和知识&#xff0c;也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学…

Elastic stack(一):Elastic stack简介、Elasticsearch简介、安装

目录 1 Elastic Stack1.1 Elastic Stack介绍1.2 为什么要用到ELK日志分析1.3 ELK的组件1.4 ELK架构原理1、ELK工作流程2、ELFK工作流程 2 Elasticsearch2.1 Elasticsearch简介1、什么是Elasticsearch2、数据来源&#xff1a;索引&#xff08;indices&#xff09;和文档&#xf…

docker常用操作-docker私有仓库的搭建(Harbor),并将本地镜像推送至远程仓库中。

1、docker-compose安装&#xff0c;下载docker-compose的最新版本 第一步&#xff1a;创建docker-compose空白存放文件vi /usr/local/bin/docker-compose 第二步&#xff1a;使用curl命令在线下载&#xff0c;并制定写入路径 curl -L "https://github.com/docker/compos…

【牛客】VL68 同步FIFO

描述 请设计带有空满信号的同步FIFO&#xff0c;FIFO的深度和宽度可配置。双口RAM的参考代码和接口信号已给出&#xff0c;请在答案中添加并例化此部分代码。 电路的接口如下图所示。端口说明如下表。 接口电路图如下&#xff1a; 双口RAM端口说明&#xff1a; 端口名I/O描述…

如何在CentOS7搭建DashDot服务器仪表盘并实现远程监控

文章目录 1. 本地环境检查1.1 安装docker1.2 下载Dashdot镜像 2. 部署DashDot应用3. 本地访问DashDot服务4. 安装cpolar内网穿透5. 固定DashDot公网地址 本篇文章我们将使用Docker在本地部署DashDot服务器仪表盘&#xff0c;并且结合cpolar内网穿透工具可以实现公网实时监测服务…

08-java基础-锁之AQSReentrantLockBlockingQueueCountDownLatchSemapho

文章目录 0&#xff1a;AQS简介-常见面试题AQS具备特性state表示资源的可用状态AQS定义两种资源共享方式AQS定义两种队列自定义同步器实现时主要实现以下几种方法&#xff1a;同步等待队列条件等待队列 1&#xff1a;AQS应用之ReentrantLockReentrantLock如何实现synchronized不…

Python | Bootstrap图介绍

在进入Bootstrap 图之前&#xff0c;让我们先了解一下Bootstrap&#xff08;或Bootstrap 抽样&#xff09;是什么。 Bootstrap 抽样&#xff08;Bootstrap Sampling&#xff09;&#xff1a;这是一种方法&#xff0c;我们从一个数据集中重复地取一个样本数据来估计一个总体参数…

Capture One 23:光影魔术师,细节掌控者mac/win版

Capture One 23&#xff0c;不仅仅是一款摄影后期处理软件&#xff0c;它更是摄影师们的得力助手和创意伙伴。这款软件凭借其卓越的性能、丰富的功能和前沿的技术&#xff0c;为摄影师们带来了前所未有的影像处理体验。 Capture One 23软件获取 Capture One 23以其强大的色彩…

【C++教程从0到1入门编程】第八篇:STL中string类的模拟实现

一、 string类的模拟实现 下面是一个列子 #include <iostream> namespace y {class string{public: //string() //无参构造函数// :_str(nullptr)//{}//string(char* str) //有参构造函数// :_str(str)//{}string():_str(new char[1]){_str[0] \0;}string(c…

RuoYi开源项目1-下载并实现运行RuoYi项目

下载并实现运行RuoYi项目 环境需要下载项目项目配置后端项目配置前端项目配置 启动后前端登录页面截图 环境需要 JDK > 8MySQL >5.7Maven > 3.0Node > 12Redis > 3 下图是我的环境配置 下载项目 若依官网 1.进入官网&#xff0c;下载版本如下图RuoYi-Vue前后…

【Vue2】组件通信

父子通信 父 -> 子 子 -> 父 props 校验 props: {校验的属性名: {type: 类型, // Number String Boolean ...required: true, // 是否必填default: 默认值, // 默认值validator (value) {// 自定义校验逻辑return 是否通过校验}} },data 的数据是自己的 → 随便改pr…

【2024-完整版】python爬虫 批量查询自己所有CSDN文章的质量分:附整个实现流程

【2024】批量查询CSDN文章质量分 写在最前面一、分析获取步骤二、获取文章列表1. 前期准备2. 获取文章的接口3. 接口测试&#xff08;更新重点&#xff09; 三、查询质量分1. 前期准备2. 获取文章的接口3. 接口测试 四、python代码实现1. 分步实现2. 批量获取文章信息3. 从exce…

豆瓣书影音存入Notion

使用Python将图书和影视数据存放入Notion中。 &#x1f5bc;️介绍 环境 Python 3.10 &#xff08;建议 3.11 及以上&#xff09;Pycharm / Vs Code / Vs Code Studio 项目结构 │ .env │ main.py - 主函数、执行程序 │ new_book.txt - 上一次更新书籍 │ new_video.…

教师如何搭建学生查询考试分数的平台?

随着信息技术的快速发展&#xff0c;搭建一个学生查询考试分数的平台已经成为现代教育管理的重要组成部分。这样的平台不仅可以提高成绩管理的效率&#xff0c;还能为学生提供便捷、及时的成绩查询服务。那么&#xff0c;作为教师&#xff0c;我们应该如何搭建这样一个平台呢&a…

2024年华为HCIA-DATACOM新增题库(H12-811)

801、[单选题]178/832、在系统视图下键入什么命令可以切换到用户视图? A quit B souter C system-view D user-view 试题答案&#xff1a;A 试题解析&#xff1a;在系统视图下键入quit命令退出到用户视图。因此答案选A。 802、[单选题]“网络管理员在三层交换机上创建了V…