天天看點

Android中Fragment和Activity的差別

當面試官突然問你這個問題的時候,覺得Fragment和Activity的差別我知道啊,編碼的時候用的很多,感覺對這兩個Android的主要控件也是很了解的,但是---->我改怎麼說?從哪開始說?這時候就可能有點懵逼了,懵逼不要緊,那我們就一點一點開始扒。

1、從最基礎的開始說--->生命周期

Activity有7個生命周期:onCreate(); onStart(); onResume(); onPause(); onStop(); onDestroy(); onRestart();

Fragment有11個生命周期:onAttach(); onCreate(); onCreateView(); onActivityCreate(); onStart(); onResume(); onPause(); onStop(); onDestroyView(); onDestroy(); onDetach();

是以Fragment比較與Activity來說會更加靈活,因為生命周期多了,你可以控制的地方也就多了。

2、從靈活性上來說

Activity是四大元件之一,是每個頁面的承載,一個就是一個,Fragment的顯示要依賴于Activity,從Fragment的生命周期中就可以了解到。

Fragment是一個一個的小碎片

    1)相比較與Activity來說更加靈活,可以在XML檔案中直接進行寫入,也可以在Activity中動态添加;

    2)可以使用show()/hide()或者replace()随時對Fragment進行切換,并且切換的時候不會出現明顯的效果,使用者體驗會好;Activity雖然也可以進行切換,但是Activity之間切換會有明顯的翻頁或者其他的效果,在小部分内容的切換上給使用者的感覺不是很好

繼續閱讀