Ejemplo n.º 1
0
        IEnumerator LoadDirectory(DirectoryInfo dir)
        {
            if (dir.Exists)
            {
                DirectoryInfo[] dirs = dir.GetDirectories().OrderByDescending(d => d.LastWriteTime).ToArray();
                for (int i = 0; i < items.Count; i++)
                {
                    UIImageGrid ug = items[i] as UIImageGrid;
                    if (!ug.EqualDirectory(dirs[i]))
                    {
                        ug.Load(dirs[i]);
                    }
                }
                if (items.Count < dirs.Length)
                {
                    for (int i = items.Count; i < dirs.Length; i++)
                    {
                        UIImageGrid grid = AddItem(dirs[i]);
                        if (grid != null)
                        {
                            yield return(new WaitUntil(grid.IsLoaded));

                            topPos -= grid.GetHeight() + spaceY;
                        }
                    }
                }
                topPos -= bottomRect.sizeDelta.y;
            }
            yield return(new WaitForEndOfFrame());

            Refresh();
        }
Ejemplo n.º 2
0
 public override void Refresh()
 {
     topPos = -spaceY;
     for (int i = items.Count - 1; i > -1; i--)
     {
         ((UIImageGrid)items[i]).Refresh();
     }
     for (int i = 0; i < items.Count; i++)
     {
         UIImageGrid _grid = items[i] as UIImageGrid;
         _grid.SetPosY(topPos);
         topPos -= _grid.GetHeight() + spaceY;
     }
     topPos -= bottomRect.sizeDelta.y;
     UpdateSize();
 }