UGUI 中Dropdown控件的使用经验

在Untiy的UGUI 刚出来的时候,是没有“下拉列表”(Dropdown)控件的,这在无形中给我们的UI界面开发带来困难,不过在Untiy5.2.2之后这个局面终于打破。下面我来说一下关于Dropdown 控件的使用。

1: 添加“下拉列表”内容。

public Dropdown Drd_IPList;
    
         //初始化
        Dropdown.OptionData op1=new Dropdown.OptionData();
        op1.text = "220.110.1.10";
        Drd_IPList.options.Add(op1);

Dropdown.OptionData op2 = new Dropdown.OptionData();
        op2.text = "220.110.1.11";
        Drd_IPList.options.Add(op2);

2:  获取当前节点。

Txt_CurrentNode.text = Drd_IPList.options[Drd_IPList.value].text;

3: 删除指定节点。

Drd_IPList.options.Remove(_DicDropDown["220.110.1.11"]);

以上内容是一个简单的说明,结合以上功能实现,我做了一个Demo 演示项目,内容如下,供大家参考。

演示Demo 项目 如下:

public class TestDropdown : MonoBehaviour
{
    //IP列表
    public Dropdown Drd_IPList;
    //显示选择的内容
    public Text Txt_CurrentNode;
    //存储Dropdown 控件中的内容,为删除使用
    private Dictionary<string, Dropdown.OptionData> _DicDropDown;

void Start () {
        _DicDropDown=new Dictionary<string, Dropdown.OptionData>();

//清空默认节点
        Drd_IPList.options.Clear();

//初始化
        Dropdown.OptionData op1=new Dropdown.OptionData();
        op1.text = "220.110.1.10";
        Drd_IPList.options.Add(op1);

Dropdown.OptionData op2 = new Dropdown.OptionData();
        op2.text = "220.110.1.11";
        Drd_IPList.options.Add(op2);

Dropdown.OptionData op3 = new Dropdown.OptionData();
        op3.text = "220.110.1.12";
        Drd_IPList.options.Add(op3);
        //初始化节点暂存集合中。
        _DicDropDown.Add(op1.text, op1);
        _DicDropDown.Add(op2.text, op2);
        _DicDropDown.Add(op3.text, op3);
    }

/// <summary>
    /// 获取当前节点
    /// </summary>
    public void GetCurrentNode()
    {
        Txt_CurrentNode.text = Drd_IPList.options[Drd_IPList.value].text;
    }

/// <summary>
    /// 删除节点
    /// </summary>
    public void RemoveNode()
    {
        //Drd_IPList.options.Remove(); //必须删除“OptionDate 类型”
        if (_DicDropDown.ContainsKey("220.110.1.11"))
        {
            Drd_IPList.options.Remove(_DicDropDown["220.110.1.11"]);
        }
    }

}//Class_end

如果各位朋友,有对以上代码有疑问的,可以直接留言。谢谢。

转载于:https://www.cnblogs.com/LiuGuozhu/p/5959304.html

UGUI 中Dropdown控件的使用经验相关推荐

  1. DROPDOWN控件

    DROPDOWN控件 1.内容介绍 HEADER控件基本使用方法 2.源码介绍 2.1.定义控件的初始值 hItem = WM_GetDialogItem(pMsg->hWin, ID_DROP ...

  2. .NET中添加控件数组

    作者:cuike519的专栏   http://blog.csdn.net/cuike519/ 添加控件数组 在.NET里面我好像没有找到有关于控件数组的说明,但是前两天偶在网上看到了一篇关于如何在. ...

  3. Asp.Net中验证控件简单分析

    为了实现验证,.net提供了一个javascript脚本,当我们生成一个asp.net页面时,通过查看页面源代码的方式,会发现都调用了下面一个javascript文件: <script src= ...

  4. 嵌套母版页中的控件访问

    嵌套母版页中的控件访问 左直拳 嵌套母版页中的控件访问很别扭. 如果一个内容页对应一个没有嵌套的母版页,访问这个母版页上的控件众所周知:类似(Button)Page.Master.FindContro ...

  5. Silverlight中使用控件模板的问题(自己添加控件的方法)

    在一步一步学Silverlight 2系列(9):使用控件模板中 WatermarkedTextBox控件可以为用户的输入提供一段提示信息,如果只是简单的一点文字信息,有时候未免显得单调,如果加上相应 ...

  6. 怎么在ASP.NET中写HTML,如何:在 ASP.NET 网页中设置控件的 HTML 属性

    如何:在 ASP.NET 网页中设置控件的 HTML 属性 10/22/2014 本文内容 更新:2007 年 11 月 这些示例显示如何向页面中的元素添加 HTML 属性.第一个示例演示如何以声明方 ...

  7. UWP 查找模板中的控件

    UWP 查找模板中的控件 原文:UWP 查找模板中的控件 这个标题我也不知道咋起,意思说一下你就明白. 1. 对官方控件的模板进行定制修改,以满足多样化需求,还有漂亮的UI 比如ListView,Gr ...

  8. .net dataGridView当鼠标经过时当前行背景色变色;然后【给GridView增加单击行事件,并获取单击行的数据填充到页面中的控件中】...

    1.首先在前台dataGridview属性中增加onRowDataBound属性事件 2.然后在后台Observing_RowDataBound事件中增加代码 protected void Obser ...

  9. QT中树控件QTreeView开发实例

    转自:http://mobile.51cto.com/symbian-268700.htm 本文讲解了QT中树控件QTreeView开发实例,对于QTreeView没有过多的讲解,那么不说废话了,看代 ...

最新文章

  1. cisco aaa 授权后门测试
  2. php 在数组中,PHP 在数组中搜索给定的简单实例 array_search 函数
  3. 让你的名字在百度排名前列
  4. Hi3516A开发--GV7601 硬件设计
  5. HttpServletResponse对象介绍
  6. 进程分析命令(持续更新中)
  7. tensorflow 根据节点获取节点前的整张图
  8. 使用前台方式启动Redis时,出现Creating Server TCP listening socket 127.0.0.1:6379: bind: Address already in use报错
  9. 鱼腥草可以随便吃吗?
  10. 强命名防止dll被篡改
  11. oracle的exp程序,数据库expimp迁移的整个过程,及注意事项
  12. 嵌入式c语言编程,嵌入式C语言编程集萃.pdf
  13. Recurrent Neural Networks(RNN) 循环神经网络初探
  14. 手把手教萌新2:认识python交互式窗口
  15. Iterator是什么,有什么作用?
  16. 蓝桥杯-基础练习-特殊回文数
  17. 模板方法设计模式两种实现方案
  18. 用时序模型预测明天的股票价格
  19. Git中rebase的使用
  20. 计算机毕业设计(9)python毕设作品之校园失物招领系统

热门文章

  1. CTFshow 信息收集 web9
  2. Python3远程监控程序实现
  3. These dependencies were not found: *!!vue-style-loader!css-loader?
  4. 分布式文件系统HDFS练习
  5. knockout的使用
  6. laravel数据迁移的时候遇到的字符串长度的问题
  7. 隐藏Nginx或Apache以及PHP的版本号的方法
  8. Hadoop简介(1):什么是Map/Reduce
  9. 利用socketserver实现异步多线程服务端简单聊天功能
  10. LeetCode 6. ZigZag Conversion