В extension UIColor прописал свою палитру цветов для интерфейса приложения. В настройках приложения даю пользователю возможность изменять цвета (фон navigationBar, цвет шрифта и т.д.), потом настройки сохраняются в userdefaults. Но как цвета изменять в реальном времени, без перезагрузки приложения, если, например, большинство цветовых настроек я указываю глобально в AppDelegate при старте приложения? А уже в контроллерах задаю цвета шрифта и т.д.
Есть хорошая статья про управление цветовыми схемами в приложении. medium.com
Ну если в двух словах, то у тебя должна быть функция установки цветовой схемы и при любых изменениях ты должен ее вызывать. Так же эту функцию нужно вызывать в методе viewWillAppear.