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