天天看点

关于fragment、ActionBar与ViewPager的一些总结(二)增加对(一)的一些修改

一.之前将ActionBar放在Fragment A中进行编辑,当用Fragment B(未设计有ActionBar) 用replace()替换掉Fragment A后,发现替换后ActionBar依然存在,由此可见ActionBar是从属与Activity的(或者说从属于系统的),故将对ActionBar的初始化移至Activity中,方便理解了很多。

二.若对一个ActionBar重复add(new Tab())的话,tab会越来越多,故需要在合适的地方使用get(Support)ActionBar().removeAllTabs(),以此来删除旧的Tab,需要新的Tab再加上就好了。

三.fragment是需要删除的。当使用一个新的fragment B去replace()一个fragment A之前,一定要对旧的fragment进行删除,故不应该对fragment进行匿名构造,使用引用指向它们,在替换之前使用get(Support)FragmentManager().remove(fragment的引用).commit()进行删除(记得先进行空指针判断)。