2012/04/05

使用Fragment寫的第一個案例

follow http://www.vogella.de/articles/Android/article.html#fragments 這個教學自製了一個簡單的project: android.fragments

一路卡關...

先是...

FragmentActivity causing ClassNotFoundException

(若使用一般方法將support library匯入便會出現以上錯誤...)

不知道在我的v 2.3.7上deploy要先把神奇的android.support.v4加到prj中,而且還不能用一般方法從property>java build path去加,得用官方的android tools>add support library... 的動作才能正確加入能完整支援fragment的library,讓低於android v3.0的機器也能正確顯示。

加入後
把所有原本 "extends Activity" 的 activity都改成 "extends FragmentActivity"

把所有原本 "extends Fragment" 的 activity都改成 "extends android.support.v4.app.Fragment"

第二關..目前還無解...
04-05 18:02:57.748: E/AndroidRuntime(26450): Caused by: java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x2

只好先run在v 4.0模擬器上


環境:
UBUNTU 12.04
JAVA 1.6.0_31
Android phone @ v2.3.7 with 小米ROM
eclipse 3.7
ADT-17

後記:

UBUNTU環境真的是得很克難的一直調整到符合自己使用的狀態阿...
是不是乾脆把手機升到miui 4.0呢?哎唷!

更新:

關於java.lang.UnsupportedOperationException: Can't convert to dimension: type=0x2的問題,看來是因為在main.xml裡面有幾個設定找不到這個東西:
android:layout_marginTop="?android:attr/actionBarSize",看來在4.0的SDK裡找的到這個定義,但跑在pre 4.0的版本上,直接把layout_marginTop寫成個固定值即可!CASE CLOSED!













沒有留言: