gpt4 book ai didi

android - 在使用 addToBackStack 的 Fragment 事务后单击后退按钮不执行任何操作

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:06:59 26 4
gpt4 key购买 nike

我希望能够通过使用 addToBackStack() 来反转 replace FragmentTransaction:

FragmentTransaction fragmentTransaction = getActivity().getSupportFragmentManager().beginTransaction();         
Fragment scheduleFragment = new ScheduleFragment();
fragmentTransaction.replace(R.id.content_container, scheduleFragment, "scheduleFragment");
fragmentTransaction.addToBackStack("scheduleFragment");
fragmentTransaction.commit();

但在那之后,点击后退按钮没有任何反应。

根据文档,它应该撤销交易。

我错过了什么?

最佳答案

执行此操作的正确方法是使用 onBackPressed() 方法在您的应用中捕获返回事件,然后使用 popBackStack()“弹出”backStack。例如:

public void onBackPressed()
{
// Catch back action and pops from backstack
// (if you called previously to addToBackStack() in your transaction)
if (getSupportFragmentManager().getBackStackEntryCount() > 0){
getSupportFragmentManager().popBackStack();
}
// Default action on back pressed
else super.onBackPressed();
}

PD:很抱歉延迟回答,但我刚刚看到你的问题。希望对您有所帮助!

关于android - 在使用 addToBackStack 的 Fragment 事务后单击后退按钮不执行任何操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18305676/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com