在MapFragment
和SupportMapFragment
的文檔中,他們通過調用newInstance()
而不是使用new SupportMapFragment()
來創建新片段。擴展SupportMapFragment - 如何實例化新的片段?
我的應用項目擴展SupportMapFragment
,我試圖打電話給MyMapFragment.newInstance()
我的片段級,造成顯示出來的地圖如預期,但沒有我的重載方法如onCreateView()
和onActivityCreated()
都被調用。花了我一會兒,然後我試圖用new MyMapFragment()
來實例化我的片段 - 而且,我的重寫方法開始被調用!
我沒有在我的類中重寫newInstance()
,並在事後很明顯,newInstance()
返回SupportMapFragment
一個實例,而不是我的擴展類的一個實例(廢話!)。
但我的問題是 - 爲什麼是有一個newInstance()
方法及爲何文檔中使用它,當它似乎很好的工作使用new SupportMapFragment()
?使用其中一種或另一種的區別是什麼?我一直無法找到SupportMapFragment的源代碼,所以...
見:http://stackoverflow.com/questions/9245408/best-practice-for-instantiating-a-new-android-fragment – pedromss