这个问题有两个部分。
假设我们有一个Activity,然后有两个片段:一个ListFragment和一个Fragment(当您从ListFragment点击一个项时将显示该Fragment)。
第1部分
关闭片段应该在哪里?我的意思是从设计的角度来看会被认为是什么好的。我看到两个选项:一种是在片段中声明接口,并让活动实现它,称之为closeFragment()。这将是一种从片段到活动的通信方式,就像Dev Site上所示。另一种可能相当简单,即调用getActivity().getSupportFragmentManager()并使用管理器关闭它。
第2部分
我知道如何创建和替换片段,因为它在Dev网站上,但我对关闭片段有疑虑。我应该怎么关闭它?像下面的代码是否正确?假设该片段已添加到BackStack中。
非常感谢你。
假设我们有一个Activity,然后有两个片段:一个ListFragment和一个Fragment(当您从ListFragment点击一个项时将显示该Fragment)。
第1部分
关闭片段应该在哪里?我的意思是从设计的角度来看会被认为是什么好的。我看到两个选项:一种是在片段中声明接口,并让活动实现它,称之为closeFragment()。这将是一种从片段到活动的通信方式,就像Dev Site上所示。另一种可能相当简单,即调用getActivity().getSupportFragmentManager()并使用管理器关闭它。
第2部分
我知道如何创建和替换片段,因为它在Dev网站上,但我对关闭片段有疑虑。我应该怎么关闭它?像下面的代码是否正确?假设该片段已添加到BackStack中。
FragmentTransaction transaction = getSupportFragmentManager().beginTransaction();
getSupportFragmentManager().popBackStack();
transaction.remove(this);
transaction.setTransition(FragmentTransaction.TRANSIT_FRAGMENT_CLOSE);
transaction.commit();
非常感谢你。