Android 带片段回溯的查询

Android 带片段回溯的查询,android,android-fragments,fragment-backstack,Android,Android Fragments,Fragment Backstack,假设我有两个片段:A和B 碎片A在上面。现在,我添加了片段B,将A保留在后台 现在,当按下后退按钮时,B被移除,A出现在顶部 A中是否有在此时被调用的回调方法 注意:onResume与活动密切相关,因此不被称为。只有在调用活动的onResume()时,才会调用片段的onResume()。很抱歉,没有回调,因为popToBackStack只会在替换事务而不是添加事务时重新创建片段 您可能需要添加到片段管理器中,并监视backbackbackbackentrycount getSupportFrag

假设我有两个片段:A和B

碎片A在上面。现在,我添加了片段B,将A保留在后台

现在,当按下后退按钮时,B被移除,A出现在顶部

A中是否有在此时被调用的回调方法


注意:onResume与活动密切相关,因此不被称为。只有在调用活动的onResume()时,才会调用片段的onResume()。

很抱歉,没有回调,因为popToBackStack只会在替换事务而不是添加事务时重新创建片段

您可能需要添加到
片段管理器中,并监视
backbackbackbackentrycount

getSupportFragmentManager().addOnBackStackChangedListener(new OnBackStackChangedListener() {    
  public void onBackStackChanged() {
      Log.i(TAG, "back stack changed ");
      int backCount = getSupportFragmentManager().getBackStackEntryCount();

      }
    }
});

一旦你得到这个触发器,你就可以像本文所描述的那样,将一条消息从
活动
传递到
片段a
,或者在你的
片段中可能有一个
观察者
,在你的主
活动
中观察一个
可观察到的

onViewStateRestored()当片段再次显示时调用。

是。您可以使用Stack arraylist实现它。您需要在
Stack
arraylist中添加两个片段,从中可以推送并弹出所需片段。请参阅此链接