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

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

UGUI 中Dropdown控件的使用经验的更多相关文章

  1. MFC中ComboBox控件用法

    MFC ComboBox 一.入门篇 ComboBox (组合框)控件很简单,可以节省空间.从用户角度来看,这个控件是由一个文本输入控件和一个下拉菜单组成的.用户可以从一个预先定义的列表里选择一个选项 ...

  2. CSharpGL(26)在opengl中实现控件布局/渲染文字

    CSharpGL(26)在opengl中实现控件布局/渲染文字 效果图 如图所示,可以将文字.坐标轴固定在窗口的一角. 下载 CSharpGL已在GitHub开源,欢迎对OpenGL有兴趣的同学加入( ...

  3. WPF中Ribbon控件的使用

    这篇博客将分享如何在WPF程序中使用Ribbon控件.Ribbon可以很大的提高软件的便捷性. 上面截图使Outlook 2010的界面,在Home标签页中,将所属的Menu都平铺的布局,非常容易的可 ...

  4. Android线程中设置控件

    在Android中经常出现多线程中设置控件的值报错的情况,今天教大家封装一个简单的类避免这样的问题,同样也调用实现也非常的方便. 自定义类: /** * Created by wade on 2016 ...

  5. [转载]ASP.NET中TextBox控件设立ReadOnly="true"后台取不到值

    原文地址:http://www.cnblogs.com/yxyht/archive/2013/03/02/2939883.html ASP.NET中TextBox控件设置ReadOnly=" ...

  6. Android中ListView控件的使用

    Android中ListView控件的使用 ListView展示数据的原理 在Android中,其实ListView就相当于web中的jsp,Adapter是适配器,它就相当于web中的Servlet ...

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

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

  8. 041. asp.net中内容页访问母版页中的控件

    母版页运行机制: 用户通过输入内容也的URL来请求某个页面, 获取该页面后, 读取@Page指令, 如果该指令引用了一个母版页, 则也读取该母版页, 如果也是第一次请求这两个页面, 则母版页和被请求的 ...

  9. 关于在DataGrid.RowDetailsTemplate中的控件查找不到的问题

    DataGrid.RowDetailsTemplate中的控件需要显示出来才能查找,可以尝试在MouseLeftButtonUp等事件中处理.

随机推荐

  1. C# 去除\0

    在做项目的时候遇到了这种情况,如图 这个字符串包含了好多的\0,等你放大查看的时候又什么都不显示,十分惹人烦,哈哈 网上有的解决办法说 tmpStr.TrimEnd("\0");但 ...

  2. 页面跳转之session

    题意:设主页为index.jsp 通过session将index.jsp中的信息传送给结果页面result.jsp.(其实,session的生命周期是整个服务器开启过程,具体不做详细介绍).这个 其实 ...

  3. Python数据科学手册

    Python数据科学手册(高清版)PDF 百度网盘 链接:https://pan.baidu.com/s/1KurSdjNWiwMac3o3iLrzBg 提取码:qogy 复制这段内容后打开百度网盘手 ...

  4. [NodeJs Windows编译学习]

    https://blog.csdn.net/gesturexiaoxin/article/details/80162944

  5. nginx配置前端代理

    #user nobody;worker_processes 1; #error_log logs/error.log;#error_log logs/error.log notice;#error_l ...

  6. ionic-基于angularjs实现的多级城市选择组件

    大家都知道在移动端的选择地区组件,大部分都是模拟IOS选择器做的城市三级联动,但是在IOS上比较好,在Android上因为有的不支持ion-scroll.所以就会出现滚动不会自动回滚到某一个的正中间. ...

  7. java中class文件与jar文件

    1. JAR 文件包 JAR 文件就是 Java Archive File,顾名思意,它的应用是与 Java 息息相关的,是 Java 的一种文档格式.JAR 文件非常类似 ZIP 文件——准确的说, ...

  8. 关于height、offsetheight、clientheight、scrollheight、innerheight、outerheight的区别

    二.也是平时经常用到的offsetheight 它返回的高度是内容高+padding+边框,但是注意哦,木有加margin哦,当然一般也木有啥需要把margin加进去的,以上代码为例,结果显示上图h2 ...

  9. Js 运行机制和Event Loop

    一.为什么JavaScript是单线程? JavaScript语言的一大特点就是单线程,也就是说,同一个时间只能做一件事.那么,为什么JavaScript不能有多个线程呢?这样能提高效率啊. Java ...

  10. Ubuntu上安装使用WeChat、TIM

    WeChat可以直接到软件商店安装,不过是网页版...(其实个人感觉还行,就是什么都不能设置就挺蛋疼的,字体大小.背景什么的) 以下是网上找到的教程,在此总结一下: 下载地址:https://gith ...