標籤:
app包中的fragment和v4包中的fragment的使用的區別
1、盡量不要用app包中的fragment,因為這個是在3.0之後才有的,支援的版本太高,在低版本中是是用不了的
2、android.support.v4.app.Fragment:可以相容到1.6的版本,
3、關於這兩個fragment使用<fragment>標籤的問題
(1)app.fragment和v4.fragment都是可以使用<fragment>標籤的
只是在在使用的時候如果是app.fragment則沒有什麼特殊的地方繼承Activity即 可。
(2)當v4.fragment使用<fragment>標籤的時候就要特別注意了:
當這個Activity的布局中有<fragment>標籤的時候,這個Activity必須繼承
FragmentActivity,否則就會報錯
08-27 08:25:04.946: E/AndroidRuntime(9839): Caused by: java.lang.ClassCastException: com.example.android_fragment_bottom.fragments.TopBarFragment cannot be cast to android.app.Fragment
此時如果不蔔繼成FragmentActivity的話 編譯系統會把<fragment>認為是app包中的Fragment來處理。但是此時我們匯入的是v4包中的Fragment
Android官方文檔中的Fragment的例子就是以app包中的Fragment來講解的。
(3)app包中關於Fragment的類和方法在V4包中都是有相應的對應的
可以看看這裡getSupportFragmentManager().getFragments()方法在V4包中消失了?
http://www.eoeandroid.com/thread-328896-1-1.html
(出處: eoe Android開發人員社區_Android開發論壇)
app包中的fragment和v4包中的fragment的使用的區別