在popBackStack之后调用了哪个方法?
在popBackStack之后调用了哪个方法?
我有一个活动,其中我调用了三个片段 - 每个片段依赖于彼此:
A(活动) -> f1 (片段一,标题{是|应该是}:列表) -> f2 (片段二,标题{是|应该是}:概览) -> f3 (片段三,标题{是|应该是}:详情)
目前,我使用以下方法调用来返回上一步:
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: FragmentManager fragmentManager = getSupportFragmentManager(); if (fragmentManager.getBackStackEntryCount()>0){ fragmentManager.popBackStack(); } } }
这个方法运行良好。
我在每个片段中重写ActionBar标题,如下所示:
ActionBar bar = getSherlockActivity().getSupportActionBar(); bar.setTitle(R.string.title_f3);
在向前导航时(如上所示),这完美地工作,但在向后导航时,ActionBar的标题没有更新:
f3 (标题{是|应该是}:详情) -> f2 (标题{是}:详情,{应该是}:概览) -> f1 (标题{是}:详情,{应该是}:列表)
显然,在片段弹出回退栈之后,我可以再次更新它。但是,我的调试器从未停在任何我期望调用的方法中,如onResume()。
那么,在弹出回退栈后,实际上是否有任何方法被调用在先前的片段中呢?