問題描述:
一個Activity 中包含多個fragment,切換的時候,需要獲取當前是哪個fragment,開始用了 fragmentManager.findFragmentById(R.id.fragment_view);(fragment_view是放fragment 的佈局ID),自以爲可以自動獲取,結果發現結果不對。
原因:
通過打log 發現:每次新加載fragment 的時候,都會將其添加進list中,而上面所述方法是直接獲取最新添加的fragment,第一次時候還OK,但是切換到其他fragment中再使用的話,獲取到的fragment 仍然不變。
解決辦法:
設置一個變量,在每次切換fragment 的時候,改變變量的值,之後直接判斷該變量的值就可以知道當前是哪個fragment了,然後可以通過 fragmentManager.findFragmentByTAg 獲取到fragment 的對象實例。