Смотри я такой же штукой страдал тоже и что бы показать одно окно но скрыть другие приходило писать по 5-10 строчек по типу
settingsTab.SetActive(true);
menuTab.SetActive(false);
infoTab.SetActive(false);
]
но это выглядит туго да и всегда при добавлении новой вкладки приписывать ещё это туго.
по этому предлагаю свою версию данной системы "страниц"
[SerializeField] private GameObject[] tabs;
public void OpenTab(int tabId){
for(int i = 0;i < tabs.Lenght; i++){
tabs[i].SetActive(false);
}
tabs[tabsId].setActive(true);
}
public void CloseAllTab(int tabId){
for(int i = 0;i < tabs.Lenght; i++){
tabs[i].SetActive(false);
}
}
в итоге что мы имеем:
приватный сериализуемый масив с вашими вкладками (можно было юзать список но его я юзал пару раз а тут пишу без редактора кода по памяти)
и два метода.
1. открыть вкладку
2. закрыть вкладку
напишите в коде вверху что то типа подсказки
// 0. Меню
// 1. Настрокий
и так дале что бы вы знали какой номер какая вкладка.
И теперь при добавлении на кнопку вам нужно будет всего лишь указать Айди вкладки которую нужно открыть и всё. Надеюсь я вам помог и если это так то отметьте пожалуйста решением дабы другие видели что это работает и мне маленький плюсик в статистику не зря же писал)