Предположим, у нас есть одно приложение для занятий. Макет содержит один FrameLayout. Действие имеет метод replaceFragment, который принимает фрагмент и заменяет фрагмент, если он есть в FrameLayout, например:
Метод в действии:
replaceFragment(Fragment fragment)
{
getSupportFragmentManager().beginTransaction().replace(R.id.frameLayout, fragment).commit;
}
Затем из любого фрагмента мы может вызвать этот метод, чтобы заменить себя новым фрагментом, а также передать данные в этот новый фрагмент следующим образом:
((MainActivity) getActivity()).replaceFragment(AnotherFragment.newInstance("data", "data"));
Я хочу знать, что многие люди говорят, что приложение Single activity хорошо, но сложно сделать. Но из того, что я вижу, это кажется простым. Я что-то упускаю, что-то не так с такой архитектурой, о которой я не знаю? Очевидно, это всего лишь пример, нам понадобится еще несколько методов.