Как создать 2 фрагмента внутри фрагмента каждой вкладки Nav

1

Я следую инструкциям на панели действий в Android Dev site

В onCreate of ActionBarActivity.class я добавляю такую вкладку;

    Tab tab = actionBar.newTab()
            .setText(R.string.artist)
            .setTabListener(new TabListener<ArtistFragment>(
                    this, "artist", ArtistFragment.class));
    actionBar.addTab(tab);

поэтому у меня будет ArtistFragment extend Fragment но я не уверен, как добавить 2 фрагмента (ListFragment и DetailFragment) внутри ArtistFragment Что будет внутри ArtistFragment.class?

Изображение 174551

Теги:
android-fragments
fragment
android-actionbar

3 ответа

1
Лучший ответ

Android не поддерживает фрагмент фрагментов (пока). Вы должны попытаться создать макет, который поддерживает 2 фрагмента, которые взаимодействуют с вашей деятельностью вместо фрагмента OR 1, который обрабатывает работу, которую будут выполнять оба фрагмента.

2

Что сказал Варпзит. За Android: Можете ли вы вложить фрагменты? , Фрагменты не могут быть вложенными. Ваш фрагмент может создать экземпляр другого фрагмента вместе с ним, достигнув его родительской активности. Обычно я бы не рекомендовал это, поскольку Фрагменты должны быть единицей инкапсуляции. Но если ваши фрагменты плотно связаны (например, подробный дисплей, соответствующий элементу списка), я мог бы это сделать.

Ваш код будет выглядеть примерно так:

            FragmentManager fm = getActivity().getSupportFragmentManager();
            MyFragmentClass myFragment = new MyFragmentClass();
            fm.beginTransaction().add(android.R.id.content, myFragment).commit();
0

Я нашел пример FragmentTabs из проекта API Demos очень полезным.

Просто создайте новый проект для Android от Eclipse и выберите демоверсии API (попробуйте API 13). Также для библиотеки поддержки (совместимости) есть демо-версия FragmentTabs в Support4Demos

Ещё вопросы

Сообщество Overcoder
Наверх
Меню