[英]Save state navigation drawer page (fragment)
我已经搜索过SO,但找不到任何有效的方法。
这是我想要做的,当我在导航抽屉页面之间导航时,我希望视图保持相同。 因此,如果我从页面A转到页面B,然后从页面B转到页面A。我希望A具有相同的状态。
在我的应用程序中,我通过一些按钮向片段A添加了一些文本。 当我导航到片段B,然后返回到A时,文本消失了。 我希望文本仍然存在。
我该怎么做呢?
我已经尝试过setRetainState(true)。 这行不通。 我还确保新的Fragment()在转到页面时仅被调用一次。 这也不起作用。
我的导航抽屉的结构与Android文档中显示的结构相同。
我认为,如果您有一个导航抽屉,则每个页面都使用片段。 在导航抽屉中的选择项上,不要重新创建片段,只要存在就从后堆栈中弹出即可。
HomeFragment homeFragment = (HomeFragment) fm.findFragmentByTag(fragmentName);
if (homeFragment == null) {
homeFragment = new HomeFragment();
fm.beginTransaction().addToBackStack(fragmentName).replace(R.id.content_frame, homeFragment, fragmentName).commit();
} else {
fm.popBackStackImmediate(fragmentName, 0);
}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.