@PabLayout ViewPager não está carregando ao usar o Backstack [duplicado]

Esta pergunta já tem uma resposta aqui:

Ciclo de vida de um ViewPager e BackStack substituídos? 1 resposta

Estou usando um TabLayout em um dos meus fragmentos com um viewPager para alternar entre dois fragmentos abaixo das guia

uando clico no FAB dentro de um dos fragmentos inferiores, carrego um novo fragmento (para entrada

No entanto, quando pressiono o botão VOLTAR, o TabLayout é exibido, mas SEM nenhum dos fragmentos inferiores (representados pelas páginas

Então, o que estou fazendo de errado?

e existe uma maneira melhor de trocar fragmentos?e existe uma maneira de pressionar o botão voltar e voltar à página viewPager que estava sendo exibida?

Fragmento com TabLayout: CustomTemplatesFragment

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
                         Bundle savedInstanceState) {
    // Inflate the layout for this fragment
    View view =  inflater.inflate(R.layout.fragment_custom_templates, container, false);
    final TabLayout tabLayout = (TabLayout) view.findViewById(R.id.tab_layout);
    tabLayout.addTab(tabLayout.newTab().setText(R.string.macro_tab));
    tabLayout.addTab(tabLayout.newTab().setText(R.string.lifestyle_tab));
    tabLayout.setTabGravity(TabLayout.GRAVITY_FILL);

    final ViewPager viewPager = (ViewPager) view.findViewById(R.id.pager);
    final CustomTemplatesPagerAdapter adapter = new CustomTemplatesPagerAdapter
            (getFragmentManager(), tabLayout.getTabCount());
    viewPager.setAdapter(adapter);
    viewPager.addOnPageChangeListener(new TabLayout.TabLayoutOnPageChangeListener(tabLayout));
    tabLayout.setOnTabSelectedListener(new TabLayout.OnTabSelectedListener() {
        @Override
        public void onTabSelected(TabLayout.Tab tab) {
            viewPager.setCurrentItem(tab.getPosition());
        }

        @Override
        public void onTabUnselected(TabLayout.Tab tab) {

        }

        @Override
        public void onTabReselected(TabLayout.Tab tab) {

        }

    });
    return view;
}

daptador @Pager: CustomTemplatePagerAdapter

public class CustomTemplatesPagerAdapter extends FragmentStatePagerAdapter {
int mNumOfTabs;

public CustomTemplatesPagerAdapter(FragmentManager fm, int NumOfTabs) {
    super(fm);
    this.mNumOfTabs = NumOfTabs;
}

@Override
public Fragment getItem(int position) {

    switch (position) {
        case 0:
            CustomMacroFragment tab1 = new CustomMacroFragment();
            return tab1;
        case 1:
            CustomLifestyleFragment tab2 = new CustomLifestyleFragment();
            return tab2;
        default:
            return null;
    }
}

Fragmento Inferior com FAB: CustomMacroFragment

private void onFABClicked() {
    Fragment fragment = null;
    Class fragmentClass = MacroTemplateDetailFragment.class;
    try {
        fragment = (Fragment) fragmentClass.newInstance();
    } catch (Exception e) {
        e.printStackTrace();
    }


    // Insert the fragment by replacing any existing fragment
    FragmentManager fm = getActivity().getSupportFragmentManager();
    FragmentTransaction ft = fm.beginTransaction();
    ft.replace(R.id.flContent, fragment);
    ft.addToBackStack(null);
    ft.commit();
}

TabLayout / ViewPager XML

<LinearLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:orientation="vertical"
android:id="@+id/customLayout"
tools:context=".CustomTemplatesFragment">

<android.support.design.widget.TabLayout
    android:id="@+id/tab_layout"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:background="?attr/colorPrimary"
    android:elevation="6dp"
    android:theme="@style/ThemeOverlay.AppCompat.Dark.ActionBar"/>

<!--android:minHeight="?attr/actionBarSize"-->

<android.support.v4.view.ViewPager
    android:id="@+id/pager"
    android:layout_width="match_parent"
    android:layout_height="fill_parent"
    android:layout_below="@id/tab_layout"/>

Fragmento com XML FAB

<android.support.design.widget.CoordinatorLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/macroCoordinator"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".CustomMacroFragment">

<!-- using RecyclerView because of
https://guides.codepath.com/android/Floating-Action-Buttons -->
<android.support.v7.widget.RecyclerView
    android:id="@+id/rvMacrolist"
    android:layout_width="match_parent"
    android:layout_height="match_parent">
</android.support.v7.widget.RecyclerView>

<TextView
    android:id="@+id/emptyView"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:gravity="center_horizontal|center_vertical"
    android:visibility="gone"
    android:text="Please add a Macronutrient Template"/>

<!--https://guides.codepath.com/android/Floating-Action-Buttons-->
<android.support.design.widget.FloatingActionButton
    android:id="@+id/macroListFAB"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_gravity="bottom|right"
    android:layout_margin="@dimen/activity_margin"
    android:src="@drawable/ic_plus"
    app:layout_anchor="@id/rvMacrolist"
    app:layout_anchorGravity="bottom|right|end"
    app:layout_behavior=".utilities.behavior.ScrollAwareFABBehavior"/>

questionAnswers(1)

yourAnswerToTheQuestion