Kotlin安卓開發:ViewPage的動態重新整理
阿新 • • 發佈:2018-11-29
總是遇到一個問題:
無法動態重新整理ViewPage裡的Fragment
ViewPage裡使用的是Fragment,list_fg就是一個fg集合、
list_fg.removeAt(msg.arg1)
Log.d("msg:",msg.arg1.toString())
iwh_view_page_adapter.notifyDataSetChanged()
這裡接收要移除的fg下標就是msg.arg1
然後呼叫view_page_adapter.notifyDataSetChanged()
感覺是可以,實際無效、
我們實現viewPage的adapter類有兩個
最開始用得是:FragmentPagerAdapter
發現,出現一個問題,刪除第一個fg,結果最後一個fg沒了。然後,下次進入後,第一個沒了,最後一個正常、
而且從最後開始刪除,就不會出現這個情況,百度一下,發現是繼承的這個adapter類的問題,他會快取當前fg和旁邊的fg
所以沒辦法立即刪除。
預設getItemPOsition會返回無狀態改變,這裡要重寫一下,返回強制改變狀態。這個可以百度相關資料,缺點是會重新繪製所有的fg
換成:FragmentStatePagerAdapter
就好了。