Android TabLayout ya no muestra contenido tan pronto como se cambia el fragmento

Estoy usando un cajón de navegación en mi proyecto, con 5 fragmentos. En un fragmento, la biblioteca de soporte de diseño introdujo TabLayout, que incluye 2 Fragmentos. Todo funciona bien, excepto cuando dejo el fragmento que tiene el TabLayout y vuelvo a él, todo el contenido se ha ido.

En cada fragmento del TabLayout tengo un SwipeRefreshLayout con un ListView, ambos no muestran nada al cambiar.

También noté que el TabLayout comienza a actuar de manera extraña. por extraño quiero decir que el indicador blanco comienza a saltar, puedes mantenerlo quieto en el medio de las dos pestañas ...

Entonces, ¿me estoy perdiendo algo que el TabLayout actúa tan extraño?

El código aquí: Fragmento que contiene el TabLayout:

public class MainFragment extends Fragment {
    private static String locale;
    private static ViewPager viewPager;
    private static TabLayout tabLayout;

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
        Utils.changeLanguage(getActivity());

        final Context contextThemeWrapper = new ContextThemeWrapper(getActivity(), R.style.MyStyle);

        LayoutInflater localInflater = inflater.cloneInContext(contextThemeWrapper);

        View view = localInflater.inflate(R.layout.fragment1, container, false);

        viewPager = (ViewPager) view.findViewById(R.id.viewpager);
        tabLayout = (TabLayout) view.findViewById(R.id.tabs);

        return view;
    }

    @Override
    public void onActivityCreated(Bundle savedInstanceState) {
        super.onActivityCreated(savedInstanceState);

        setupViewPager(viewPager);
        tabLayout.setupWithViewPager(viewPager);
    }

    private void setupViewPager(ViewPager viewPager) {
        LinesTabsAdapter adapter = new LinesTabsAdapter(getActivity().getSupportFragmentManager());
        adapter.addFragment(new Fragment1(), "Fragment 1");
        adapter.addFragment(new Fragment2(), "Fragment2");
        viewPager.setAdapter(adapter);
    }


    public static class Fragment extends Fragment {
        private static List<RowItems1> rowItems;
        private static ListView listview;
        private static Adapter1 adapter;

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

            View view = inflater.inflate(R.layout.activity1, container, false);

            listview = (ListView) view.findViewById(R.id.listview1);

            return view;
        }

        @Override
        public void onActivityCreated(Bundle savedInstanceState) {
            super.onActivityCreated(savedInstanceState);

            updateInfo(true);
        }

        public static void updateInfo() {
            rowItems = new ArrayList<>();
            adapter = new Adapter1(context, rowItems);
           listview.setAdapter(adapter);
        }
    }

    public static class Fragment2 extends Fragment {
        private static List<RowItems2> rowItems;
        private static ListView listview;
        private static Adapter1 adapter;

        @Override
        public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {

            View view = inflater.inflate(R.layout.activity_lines_all, container, false);

            listview = (ListView) view.findViewById(R.id.activity2);

            return view;
        }

        @Override
        public void onActivityCreated(Bundle savedInstanceState) {
            super.onActivityCreated(savedInstanceState);

            updateInfo(true);
        }

        public static void updateInfo() {
            rowItems = new ArrayList<>();
            adapter = new Adapter2(context, rowItems);
            listview.setAdapter(adapter);
        }
    }
}

Estoy usando MainFragment como un singleton y reemplazando el contenido con él tan pronto como el usuario lo seleccione en el cajón de navegación. Cuando cambio a él, todo funciona bien, ListView contiene sus datos, SwipeRefreshLayout funciona bien. Cuando cambio a otro fragmento con el cajón de navegación y vuelvo a este fragmento, no muestra nada, como se describió anteriormente.

EDITAR: ¿Soy el único que tiene problemas con esto? Si alguien tuvo problemas, ¿cómo lo solucionaron?

Respuestas a la pregunta(1)

Su respuesta a la pregunta