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(); } } }
public static void HideCurrentIn(UiTabGroup groupId) { CheckAndInit(); TabGroup group = tabGroups[groupId]; group.SwitchTo(null); }