Допустим, есть игра в которой 2 режима. При одном режиме шарики от стен отскакивают, а при другом не отскакивают. В настройках нужен переключатель режимов. Я представляю это так: В настройках есть логическая переменная. А в коде при выполнении проверяется условие, если переменная Истина, то реализуется один участок кода, если ложь то другой. Но при каждом кадре приходится проверять это условие. Возможен ли такой подход, при котором это условие не проверялось бы так часто?
Вот что еще я представляю: В настройках выставлена Истина. Вхожу в класс реализации игрового процесса и в нем в onCreate условие: Если истина, то в определенном месте кода выполнять такой то метод. Но таких возможностей Java вроде не предоставляет.
Возможен такой подход: в onCreate делается проверка логической переменной и в зависимости от неё создается, тот или иной класс , или тот или иной объект класса
ИграА - шарики отскакивают, ИграБ - шарики не отскакивают.
что если создать 2 класса играА и играБ (играБ наследуется от играА). В классе играА в методе пририсовка кадра убрать if, и сделать нужно поведение шариков. А в классе ИграБ переопеределить метод прорисовка шариков и сделать так чтобы они отскакивали.
Ну и в самой функции запуска игры проверять значение с настроек и на его основе запускать нужный класс.
p.s. Паттерн Strategy
Попробуйте использовать классическую реализацию preference. Есть настройки например preferenceFragment, там ваш switchPreference, подписываетет его, или переопределяет onPreferenceChange там где нужно, прописываете свои логику поведения, те вставляете ваш метод/функц. боунсить шарики или нет - например обычным сетом. Это очевидный вариант, но путей много. Можете организовать обычный State pattern, через интерфейс, но суть будет такая же. Можете сделать как вы делали через SharedPreference и bool полем, но тогда в onResume , отлавливать его, тоже стандартный рабочий вариант, но только не на каждый кадр... Удачи.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости