Как добавить несколько фрагментов в один контейнер?

80
06 марта 2022, 05:10

Пытаюсь добавить несколько фрагментов в один контейнер, но в результате получается так, как если бы добавлял без цикла первый фрагмент. Где ошибка?

 if (radioArray != null) {
                for (Radio r : radioArray) {
                    mFragmentManager = getSupportFragmentManager();
                    mFragmentTransaction = mFragmentManager.beginTransaction();
                    RadiosFragment radiosFragment = new RadiosFragment(this, r);
                    mFragmentTransaction.add(R.id.main_container, radiosFragment);
                    Log.d("debug", r.getGenre());
                    mFragmentTransaction.commit();
                }
Answer 1

Разобрался: у меня во фрагменте был RecyclerView. Когда я добавлял фрагменты на активность - первый прокручивался до конца и все. Задиссеблил скролл на списке и вставил скролл родительским лэйаутом для контейнера с фрагментами.

Answer 2

Это смотря в какой layout вы добавляете свой фрагмент. Фрагмент всего лишь кусок того же лейаута только со своими заморочками.

Если R.id.main_container представляет собой FrameLayout - то вы стопочкой друг на друга сложите свои фрагменты, они перекроют друг друга и будет доступен/виден только последний.

Если же R.id.main_container это LinearLayout - то фрагменты выстроятся друг за дружкой горизонтально или вертикально в зависимости от ориентации LinearLayout

READ ALSO
Задача выполняется только один раз

Задача выполняется только один раз

Решил реализовать в коде обновление информации по API запросу через определенный интервал времениСразу по нажатию кнопки информация приходит...

93
Cортировка листа по фамилии в файле

Cортировка листа по фамилии в файле

Не могу разобраться как сортировать в файле по фамилии

234
Логика действий постинкрементов

Логика действий постинкрементов

Помогите разобраться в логике действийЧто левый оперант всегда сохраняется отдельно и потом возвращается более менее осознал в некоторых...

77