Android : fragment从backstack弹出时调用哪个方法

Android : Which method is called when fragment is pop out from backstack

我研究过堆栈溢出,但似乎没有找到解决方案。

我有一个mainActivity和几个frgaments,我正在通过 replace 方法和相应的片段已添加到后台堆栈,但我的问题是当我将其从后台堆栈中弹出时,调用了哪个回调我想在将其从堆栈中弹出之前检查一些内容,当我将其从堆栈中弹出时,onResume() 方法未调用从后栈弹出

帮助

只需执行以下操作:

getSupportFragmentManager().addOnBackStackChangedListener(new OnBackStackChangedListener()
    {
        public void onBackStackChanged() 
        {                   
            // Your logic here               
        }
    });

此回调将在返回堆栈上的每次更改时调用 - 即使在添加片段时也是如此。如果您想知道片段何时被删除,请添加以下逻辑

Fragment someFragment = (Fragment)getSupportFragmentManager().findFragmentById(R.id.fragmentItem);

if (someFragment == null) {
   // this fragment was removed from back stack
}