1. 程式人生 > 實用技巧 >UGUI 中Dropdown控制元件的使用經驗

UGUI 中Dropdown控制元件的使用經驗

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 演示專案,內容如下,供大家參考。

wKiom1gAO2qiAbEnAABCqsMnQ3E121.jpg-wh_50


演示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 下載包。

轉載於:https://blog.51cto.com/liuguozhu/1861787