Это вопрос разработки, а не технического вопроса.
Общий случай : я хочу, чтобы событие пользовательского интерфейса во фрагменте внесло изменения во всей деятельности.
Конкретный случай : у меня есть два фрагмента, размещенных в одном упражнении.Когда пользователь нажимает кнопку в одном из этих фрагментов, я хочу заменить его другим.
Я не хочу , однако мои фрагменты касаются моей деятельности.Я могу захотеть изменить поведение позже (может быть, на большом экране показать оба фрагмента вместо замены первого), и я не хочу, чтобы мой фрагментный код имел такую логику.
То, что я сделал, быловнедрить класс Listener
в мои фрагменты, который сообщает о событиях обратно в Activity
.Таким образом, если я хочу использовать другой класс Activity
с другим поведением дисплея, я могу просто поменять слушателя и оставить код Fragment
без изменений.
Это хороший способ для этого?Существует ли стандартная хорошая практика или лучший шаблон проектирования?