在调用popbackstack()之后,所有添加的片段都会显示出来的原因是因为popbackstack()方法会将Fragment事务回退到指定的状态,但并不会立即执行回退操作。相反,它会将回退操作添加到Fragment事务的回退栈中,并在下一次执行事务时才会执行回退操作。
当调用popbackstack()方法后,FragmentManager会检查回退栈中的事务,并将最近的一个事务执行回退操作。这意味着之前添加的片段将会重新显示出来,因为它们的状态被还原到了添加时的状态。
需要注意的是,popbackstack()方法只会执行一次回退操作,如果希望连续执行多次回退操作,需要多次调用popbackstack()方法。
总结起来,调用popbackstack()方法后,所有添加的片段都会显示出来,是因为该方法将回退操作添加到了Fragment事务的回退栈中,并在下一次执行事务时才会执行回退操作,从而还原之前添加的片段的状态。
领取专属 10元无门槛券
手把手带您无忧上云