Пример #1
0
    private static void ReInitUis()
    {
        // todo prevent adding copies of ui

        allUis = new Dictionary <Type, UiBehaviour>();

        UiBehaviour[] findedUis = Resources.FindObjectsOfTypeAll <UiBehaviour>();

        Debug.Log($"findedUis.Length {findedUis.Length}");

        // clear posible of groups for writing it by new values (old DontDestoroyable will be re added)
        foreach (var kvp in tabGroups)
        {
            TabGroup tabGroup = kvp.Value;
            tabGroup.posibleUis = new List <UiBehaviour>();
        }

        foreach (UiBehaviour ui in findedUis)
        {
            UiTabGroup groupId = ui.TabGroup;
            TabGroup   group   = tabGroups[groupId];
            group.posibleUis.Add(ui);

            allUis.Add(ui.GetType(), ui);
        }

        foreach (UiBehaviour ui in findedUis)
        {
            if (!ui.isInited)
            {
                ui.ForceHide();
                ui.InitUi();
            }
        }
    }
Пример #2
0
    public static void HideCurrentIn(UiTabGroup groupId)
    {
        CheckAndInit();

        TabGroup group = tabGroups[groupId];

        group.SwitchTo(null);
    }