Two fragments in a fragment

Activity Lifecycle, Saving Activity State, Managing Tasks, Intent, Intent Filter
Ответить
Аватара пользователя
mdzht
Сообщения: 124
Зарегистрирован: 11 ноя 2013, 11:33
Откуда: fock it
Контактная информация:

Two fragments in a fragment

Сообщение mdzht » 12 сен 2014, 07:24

Привет всем,
Не могу разобраться, фрагментов близнецов можно вставить внутрь матушки фрагмента?

1.CurrentFragment
2.FirstFragment
3.SecondMatushkaFragment
3.1 AliFragment
3.2 ValiFragment
«Life is too short to spend rewriting code»

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Two fragments in a fragment

Сообщение Mikhail_dev » 12 сен 2014, 08:39

Да. Создавайте динамически фрагменты и вставляйте их во фрагмент через getChildFragmentManager
хотя я немного поправлюсь: во ViewPager к примеру можно вставить пару фрагментов, а вот в один обычный фрагмент вставить несколько фрагментов так, чтобы они все отображались, такого не получится.

Аватара пользователя
mdzht
Сообщения: 124
Зарегистрирован: 11 ноя 2013, 11:33
Откуда: fock it
Контактная информация:

Re: Two fragments in a fragment

Сообщение mdzht » 12 сен 2014, 10:00

Mikhail_dev писал(а):Да. Создавайте динамически фрагменты и вставляйте их во фрагмент через getChildFragmentManager
хотя я немного поправлюсь: во ViewPager к примеру можно вставить пару фрагментов, а вот в один обычный фрагмент вставить несколько фрагментов так, чтобы они все отображались, такого не получится.
ViewPager это хорошо, конечно. но не в моей задаче.
У меня на Activity один CurrentFragment, и несколько других разных 1,2,3,4..Fragments. Но в одном случае, нужно отображать на Activity два fragments, в голову ничего дельного не приходит
«Life is too short to spend rewriting code»

Аватара пользователя
Mikhail_dev
Сообщения: 2386
Зарегистрирован: 09 янв 2012, 14:45
Откуда: Самара

Re: Two fragments in a fragment

Сообщение Mikhail_dev » 12 сен 2014, 10:33

А, ну это просто. Надо сделать два контейнера в активности
[syntax=xml]
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="horizontal" >
<FrameLayout
android:id="@+id/first_container"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="match_parent">
</FrameLayout>
<FrameLayout
android:id="@+id/second_container"
android:layout_weight="1"
android:layout_width="match_parent"
android:layout_height="match_parent">
</FrameLayout>
</LinearLayout>
[/syntax]
Кладешь в нужный контейнер нужный фрагмент и получишь два фрагмента на экране. Если надо фрагмент скрыть, то просто скрываешь нужный контейнер как обычный элемент. если надо сделать один фрагмент больше чем второй, то поиграйся с весами (android:layout_weight)

Ответить