如果非空则加载片段 - Android

Loading Fragment if not Null - Android

我需要一个问题的帮助,在我正在开发的 android 应用程序中,我一直在 Fragment 之间导航。我使用代码在 Fragment 之间导航。

newsFeedFragment fragment = new newsFeedFragment();
android.support.v4.app.FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction();
fragmentTransaction.replace(R.id.fragment_container, fragment);
fragmentTransaction.addToBackStack(null);
fragmentTransaction.commit();

使用上面的代码,导航到从“onCreate”加载的新闻提要片段。您好,如果片段之前加载过,它应该显示之前加载的页面,onCreate 应该被跳过,但 onResume 不会。但是,如果 Fragment 未在 Fragment 首次加载之前未加载。

谁能帮我实现这个目标?

非常感谢

您可以通过向您的片段添加 TAG 来完成此操作。在视图中添加片段的任何地方都可以像下面这样:

getSupportFragmentManager().beginTransaction().replace(R.id.something, new SomeFragment(),"SOMETAG").commit();

以及您想检查此片段是否已存在以防止重新加载它的任何地方添加以下检查:

SomeFragment sf = (SomeFragment) getSupportFragmentManager().findFragmentByTag("SOMETAG");
if(sf != null)
{
   //the condition when the fragment is already exists
}
else
{
   //the condition when the fragment is not loaded
}