gpt4 book ai didi

android - 将 fragment 添加到后退堆栈(后退时出现空白屏幕)

转载 作者:行者123 更新时间:2023-11-29 15:06:18 25 4
gpt4 key购买 nike

我有两个 fragment ,第一个称为 Summer Jobs Fragment,其中包含项目列表,第二个称为 Summer Jobs Details Frgment,其中包含每个项目的详细信息。我正在尝试设置后退跟踪,以便当我从 Summer Jobs Detail Fragment 中按下后退按钮时,我会返回到 Summer Jobs Fragment。

这是我从 SJF 到 SJDF 的初始转换代码:

public void onItemClick(
AdapterView<?>parent,View view, int position, long id) {

SummerJobDetailsFragment.mMyAppsBundle.
putInt("value", position);
SummerJobDetailsFragment fragment =
new SummerJobDetailsFragment();
FragmentManager fragmentManager =
getFragmentManager();
list.setVisibility(parent.INVISIBLE);
fragmentManager.beginTransaction().replace(R.id.displayjobs_detailed, fragment).
addToBackStack( "tag" ).commit();

}

下面是我修改 main 中的 OnBackPressed() 的方法:

public void onBackPressed() {
DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout);
if (getFragmentManager().getBackStackEntryCount() > 0 ) {
getFragmentManager().popBackStack();

} else {
super.onBackPressed();

}
}

但是当我从 SJDF 按下后退键时,我得到一个空白屏幕:

list view details After back is pressed

最佳答案

fragmentTransaction.addToBackStack() <--不要在你的第一个 fragment 中包含这个。-->

if(getSupportFragmentManager().getBackStackEntryCount() !=1){
fragmentTransaction.addToBackStack(null);
}

关于android - 将 fragment 添加到后退堆栈(后退时出现空白屏幕),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37030779/

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