如何在不恢复的情况下从backstack弹出片段?我只想从后台删除,我不想显示它。
答案 0 :(得分:0)
如果您不使用FragmentTransaction的方法
public abstract FragmentTransaction addToBackStack (String name)
将其添加到后台堆栈。没有必要将其删除。
答案 1 :(得分:0)
这是架构问题。
1)假设我们有2个控制器(片段/活动):控制器A和控制器B. 它们都连接到某个Model的一个实例(你可以在Application-heir类中使用绑定服务,Singleton模式或init模型,并为它做一个getter)。 当控制器B中发生一些有趣的事情时,他会通知模型,然后模型调用controllerA.finish()/ controllerA.remove()。 当然,我总是尝试尽可能好地实现这个解决方案,但是有一个主要的想法。
2)在另一种情况下,我在startActivity(intent)之后立即调用finish();
3)我也可以写:startActivityForResult(intent,requestCode),在完成第二个活动方法之后调用onActivityResult(requestCode,responseCode,intent) - 如果requestCode相等,我就完成了活动。