public void SwitchTo(ScreenUI nextScreen)
        {
            if (nextScreen == currentScreen)
            {
                return;
            }

            currentScreen.Out();
            nextScreen.In();
            lastScreen    = currentScreen;
            currentScreen = nextScreen;
        }
        private void Start()
        {
            foreach (ScreenUI screen in GetComponentsInChildren <ScreenUI>())
            {
                if (screen != firstScreen)
                {
                    CanvasGroup otherCanvasGroup = screen.GetComponent <CanvasGroup>();
                    otherCanvasGroup.alpha          = 0f;
                    otherCanvasGroup.interactable   = false;
                    otherCanvasGroup.blocksRaycasts = false;
                }
            }
            CanvasGroup canvasGroup = firstScreen.GetComponent <CanvasGroup>();

            canvasGroup.alpha          = 1f;
            canvasGroup.interactable   = true;
            canvasGroup.blocksRaycasts = true;
            currentScreen = firstScreen;
        }