最近出現一個奇怪事,在使用Androidx 中的fragment 出現了奇葩事情,回到上一個fragment
getFragmentManager().popBackStack();
對就是這個方法一直報錯:
Caused by: java.lang.NullPointerException: Attempt to invoke virtual method boolean androidx.fragment.app.FragmentManagerImpl.isDestroyed()' on a null object reference
對就是它,
後來我又嘗試了其他的方法如:
finish()
onBackPressed()
同樣出現了錯誤。這讓我齊了個怪了。怎麼回事?我立刻翻閱了google的官方文檔,對自己的代碼進行了檢查,終於我發現了一個小祕密,那就是
onDetach();
對就是這個方法:
解釋:與onAttach()相對應,當Fragment與Activity的關聯被取消時調用。
對就是它我決定開始盤它,直接把他註釋調,然後運行,一切安好了!。