Fragment
雖然有onResume()
和onPause()
方法,但是這兩個方法是Activity
的方法調用時機也與Activity
相同,和ViewPager
搭配使用這個方法就很雞肋了,根本不是你想要的效果,這里介紹一種方法。
@Override public void setUserVisibleHint(boolean isVisibleToUser) { super.setUserVisibleHint(isVisibleToUser); if (isVisibleToUser) { //相當於Fragment的onResume } else { //相當於Fragment的onPause } }
通過閱讀ViewPager
和PageAdapter
相關的代碼,切換Fragment
實際上就是通過設置setUserVisibleHint
和setMenuVisibility
來實現的,調用這個方法時並不會釋放掉Fragment
(即不會執行onDestoryView)。