当前位置: 首页 > news >正文

unity编写树形结构的文件管理页面

项目中需要实现点击“+”按钮展开对应分类下的所有训练科目,再次点击“–”按钮将对应分类下的训练科目隐藏并收起整个面板。对此,编写一个类,将其挂载到树形结构的父类上,代码如下:

using UnityEngine;
using UnityEngine.UI;public class TreeViewParent:MonoBehaviour
{public Button controlBtn;//树形展开/收回按钮public Sprite[] controlBtnSprite;//按钮切换的样式public Transform itemPanel;//树形子分支的父类public float width;//宽度public float itemHeight;//子分支的高度void Start(){controlBtn.onClick.AddListener(onControlBtnClicked);}void onControlBtnClicked(){if(controlBtn.GetComponent<Image>().sprite == controlBtnSprite[0]){controlBtn.GetComponent<Image>().sprite = controlBtnSprite[1];foreach(Transform item in itemPanel)item.gameObject.SetActive(true);transform.GetComponent<RectTransform>().sizeDelta = new Vector2(width, itemHeight * (itemPanel.childCount + 1));}else{controlBtn.GetComponent<Image>().sprite = controlBtnSprite[0];foreach(Transform item in itemPanel)item.gameObject.SetActive(false);transform.GetComponent<RectTransform>().sizeDelta = new Vector2(width, itemHeight);}}
}
http://www.lryc.cn/news/126020.html

相关文章:

  • 基于单片机的家用智能浇灌系统
  • Solr的入门使用
  • css鼠标样式 cursor: pointer
  • 【解决】Kafka Exception thrown when sending a message with key=‘null‘ 异常
  • 中心极限定理 简明教程
  • 商城-学习整理-基础-库存系统(八)
  • 【C++ 学习 ⑬】- 详解 list 容器
  • 设计模式十五:命令模式(Command Pattern)
  • FPGA GTP全网最细讲解,aurora 8b/10b协议,HDMI视频传输,提供4套工程源码和技术支持
  • 用dcker极简打包java.jar镜像并启动
  • 设计模式——创建型
  • iTOP-i.MX8M开发板添加USB网络设备驱动
  • 分类预测 | MATLAB实现GAPSO-LSSVM多输入分类预测
  • JMeter 的并发设置教程
  • 数据治理有哪些产品
  • windows安装go,以及配置工作区,配置vscode开发环境
  • 第五章nginx负载均衡
  • MATLAB计算一组坐标点的相互距离(pdist、squareform、pdist2函数)
  • 我国农机自动驾驶系统需求日益增长,北斗系统赋能精准农业
  • 防雷检测行业应用完整解决方案
  • 16.4 【Linux】特殊文件与程序
  • qrcode.react生成二维码
  • ETF套利及交易者如何进行套利的
  • 了解异或的好处和用途
  • vue函数式组件
  • Idea Live Template 功能总结
  • 场景入门12----构造脚本搭建栅栏和石头墙
  • 零基础看懂免费开源的Stable Diffusion
  • Zmq适配Win7 SP0 / Win XP/ Win 2k
  • 掌握Python的X篇_30_使用python解析网页HTML