场景
我有一个包含2个片段的活动。
目标
我希望能够知道用户何时从Fragment C回来,然后回到片段B上。
问题。
我们都知道我们不能在Fragment B中使用onResume覆盖,因为这个onResume与Activity的生命周期紧密结合。如果在片段B中有像onResume这样的覆盖,那对我的情况确实有帮助。我知道当Fragment C超越它时片段B没有暂停,所以我知道onResume就像策略一样不行。
解决方案
我想我可以在Activity A中附加一个回调onBackPressed。就像是 。
Psuedo Code
private onBackPressed()
{
if (currentFragment == Fragment C) {
FragmentB = findFragmentB();
//call custom method written in FragmentB
FragmentB.onBackPressed();
} else {
super.onBackPressed();
}
}
在我继续之前,这是正确的进入方向吗?
答案 0 :(得分:0)
确切地说,如果这个问题有最合适和最简单的解决方案。我想你应该继续这个。我找到了其他方法,但这比其他方式更好,更容易
答案 1 :(得分:-1)
单独的东西应该有效
BaseFragment currFrag = (BaseFragment) manager.findFragmentById(R.id.fragmentname);
currFrag.onFragmentResume();
这里解释不多,onFragmentResume字面上调用片段的onResume。