FragmentManager заменяет фрагменты без вызова onPause () onDestroy () для старого фрагмента

В моем приложении у меня есть левое меню, которое управляет транзакциями Fragment в одном FragmentView в моей MainActivity . Над FragmentView меня есть новый компонент PullToRefresh который используется в новом GMAIL, только обновлен только в одном Fragment .

Введите описание изображения здесь

Я хочу остановить обновление, если я заменил этот Fragment на другой.

 getSupportFragmentManager().beginTransaction() .replace(R.id.fragment_container, new pullToRefreshFragment()) .commit(); 

Я ожидал, что FragmentManager придерживаться традиционного FragmentLifeCycle, тогда я решил остановить компонент onPause в onPause , onDestroy , onStop или onDetach() . К сожалению, этот метод никогда не вызывался при замене Fragment . Они заменяются только в том случае, если я выбрал один и тот же фрагмент из меню слева.

 @Override public void onDetach() { if(mPullToRefreshLayout.isRefreshing()){ mPullToRefreshLayout.setRefreshComplete(); } super.onDetach(); } 

Это означает, что FragmentManager кэширует фрагменты и не уничтожает их, если я не пытаюсь заменить фрагмент другим фрагментом из того же типа.

Мой вопрос: что такое фрагмент lifeCycle в случае замены или добавления нового фрагмента поверх другого с помощью FragmentManager ?

Где я должен остановить свой компонент PullToRerfesh, если я хочу остановить его при замене фрагмента на другой?