Exemplo n.º 1
0
    void Start()
    {
        //Populate Header Button
        SetHeader(chosenIndex);
        float myWidth = GetComponent <RectTransform>().sizeDelta.x;// - widthDelta;

        //Instantiate Options
        if (optionDataList.Count == 0)
        {
            throw new System.Exception("optionDataList.Count is zero!");
        }
        int i = 0;

        //Instantite Option elements
        foreach (LineItemData option in optionDataList)
        {
            GameObject newOption = Instantiate(ddOptionPrefab, contentTransform, false);
            //Set width of child element
            RectTransform nORect = newOption.GetComponent <RectTransform>();
            nORect.sizeDelta = new Vector2(myWidth, nORect.sizeDelta.y);
            //Pass on Option data
            DropDownOption newDDO = newOption.GetComponent <DropDownOption>();
            newDDO.optionID = i++;
            newDDO.Unpack(option);
            newDDO.dropDownMenu = this;
            //Give each Option a Separator to manage
            if (ddSeparatorPrefab != null)
            {
                GameObject newSeparator = Instantiate(ddSeparatorPrefab, contentTransform, false);
                //Set width of child element
                RectTransform nOSep = newSeparator.GetComponent <RectTransform>();
                nOSep.sizeDelta    = new Vector2(myWidth, nOSep.sizeDelta.y);
                newDDO.mySeparator = newSeparator;
            }
            ddOptionList.Add(newDDO);
        }
        //Handle Background height
        backgroundRect = background.GetComponent <RectTransform>();
        sizeRetracted  = backgroundRect.rect.size;
        widthRetracted = backgroundRect.sizeDelta.x;
        myRect         = GetComponent <RectTransform>();
        originPosition = myRect.anchoredPosition;
        SetDeltaHeight();
        background.SetActive(false);
        //layoutGroup
        layoutGroup.padding.top = (int)elementHeight;
    }