温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

UGUI 中Dropdown控件的使用经验

发布时间:2020-07-14 14:28:51 来源:网络 阅读:3978 作者:Liu_guozhu 栏目:开发技术

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 演示项目,内容如下,供大家参考。

UGUI 中Dropdown控件的使用经验


演示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



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

为了更好的学习,提供这个下拉列表的Demo 下载包。

附件:http://down.51cto.com/data/2368256
向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI