在android中替换片段时addToBackstack不工作
我读了关于这个主题的文章,但它仍然不起作用 这是我在onCreate方法中的代码在android中替换片段时addToBackstack不工作,android,android-fragments,Android,Android Fragments,我读了关于这个主题的文章,但它仍然不起作用 这是我在onCreate方法中的代码 if (savedInstanceState==null){ WeatherFragment weatherFragment = (WeatherFragment) Fragment.instantiate(this, WeatherFragment.class.getName()); FragmentTransaction fragmentTransaction = getF
if (savedInstanceState==null){
WeatherFragment weatherFragment = (WeatherFragment) Fragment.instantiate(this, WeatherFragment.class.getName());
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.add(R.id.container_small, weatherFragment);
fragmentTransaction.commit();
}
然后我替换片段
FrameLayout fl;
if (findViewById(R.id.container2) != null)
fl = (FrameLayout) findViewById(R.id.container2);
else
fl = (FrameLayout) findViewById(R.id.container_small);
SettingsFragment settingsFragment = (SettingsFragment) Fragment.instantiate(this, SettingsFragment.class.getName());
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.container_small, settingsFragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
现在我按下backbutton,应用程序不会返回到第一个片段
FrameLayout fl;
if (findViewById(R.id.container2) != null)
fl = (FrameLayout) findViewById(R.id.container2);
else
fl = (FrameLayout) findViewById(R.id.container_small);
SettingsFragment settingsFragment = (SettingsFragment) Fragment.instantiate(this, SettingsFragment.class.getName());
FragmentTransaction fragmentTransaction = getFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.container_small, settingsFragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();
知道为什么吗
@Override
public void onBackPressed() {
// TODO Auto-generated method stub
if(getFragmentManager().getBackStackEntryCount()!=0)
getFragmentManager().popBackStack();
else
}
你需要重写onBackPressed()方法当你按下后退按钮时会发生什么?应用程序不会返回到上一个片段。(就我而言,这里是天气片段)谢谢。它起作用了。我想用“addToBackStack”方法解决这个问题。因为这是android开发者网站推荐的。