Ejemplo n.º 1
0
    void Populate(IProjectList data)
    {
        int len = Math.Max(data.Length, content.childCount);
        for (int i = 0; i < len; i++)
        {
            GameObject newItem;
            ProjectItem item;
            ProjectItemDataProvider provider;
            bool usePooled = (i < content.childCount);

            newItem = usePooled
                ? content.GetChild(i).gameObject
                : Instantiate(prefab) as GameObject;

            if (i < data.Length)
            {
                item = data.Get(i);
                provider = newItem.GetComponent<ProjectItemDataProvider>();
                provider.Populate(item);
                provider.loadImages(this);

                if (!usePooled)
                {
                    newItem.transform.SetParent(content);
                }

                newItem.SetActive(true);
            }

            else
            {
                newItem.SetActive(false);
            }

        }
    }