Eclipse中Recyclerview跟Coordinatorlayout使用的系列問題
(AS的哥們可以繞道了。此文章專為仍在用Eclipse的大兄弟)
小兄弟昨天開始想參觀一下Meterial Design.就開始去搜尋一些東西,比如:
Recyclerview怎麼用
Coordinatorlayout怎麼用
折騰了很久很久,大概是些如下輸出:
Did not find class ...dexPathList
由許多沒有找到:
比如
Did not find class CoordinatorLayout...dexPathList ,
Did not find class Recyclerview...dexPathList ,
Did not find class MainAcitivty...dexPathList
NoClassDefFoundError...R.styleable
FileNotFoundException
InflateException
...
有圖為證:
圖還有很多,不帶各位大兄弟一一欣賞了。
一句話--大兄弟被搞的很辛苦呀!
特寫此篇文章,希望能幫到之後來的千千萬大兄弟!
Exception是變換多端的,問題的關鍵大概就是:
導包的打開方式不完全正确!
大概如下:
第一坑:
support v7包跟support design包,不能直接把jar考進libs來使用。
而應該是作為項目把整個support v7跟design包導入eclipse再作為isLibrary使用!
檔案路徑:
F:\android-sdk-windows\extras\android\support(這是我自己的,大家可以去自己的sdk下載下傳目錄那裡找)
v7包路徑:F:\android-sdk-windows\extras\android\support\v7\appcompat
design包路徑:F:\android-sdk-windows\extras\android\support\design
大兄弟友情提醒:
最好把sdk包更新到21以上。22,23,24,25...也行,反正sdk多了不壓身~~少了就可能又是個潛在的雷
第二坑:
把design項目跟v7項目導進去以後,作為isLibrary。
這時候,噼裡啪啦的紅叉開始來了!
(尤其是design項目特别多,因為裡面有些檔案要v7包支援。
大家可以試試把v7作為library先引入design項目。)
大兄弟們勿慌,且看下文;
這是因為res檔案家裡有很多不同版本的适配檔案,
但是項目的預設編譯版本可能是api很低的版本。
于是,
右鍵項目-->屬性-->Android
你可以看到右邊有許多不同版本的API,這個是項目的編譯版本。
選擇5.0+。
(鄙人是直接幹上6.0.大兄弟們要記住,這是編譯版本。AndroidManifest那裡,可以設定target跟min版本。)
這個時候,如果你不是人品負值,基本上紅叉很少了。
把紅叉地方注釋掉一兩個,基本上項目就白淨渾圓了。
人是鐵飯是鋼,再硬硬不過白米飯,歇口氣吧大兄弟,第三坑coming
第三坑:
若大兄弟們情緒高漲,想玩玩Recyclerview。
當然就需要導入Recyclerview的包咯。
以下是地雷:
F:\android-sdk-windows\extras\android\support\v7\recyclerview
鄙人也不知道為什麼
反正不能用。。。
以下是正确打開方式:
F:\android-sdk-windows\extras\android\m2repository\com\android\support\recyclerview-v7\21.0.0
找到裡面的:
recyclerview-v7-21.0.0.aar
改字尾為jar。然後解壓。
裡面有個class的jar包。
ok,
把這個包直接copy到項目的libs裡面。就可以用recyclerview了。
第四坑:
雖然,design跟v7項目作為library引入項目了。
但為了在代碼編寫時能找到,還是要要相應的jar包導入到libs檔案之下。
(上圖)
第五坑:
這樣颠鸾倒鳳的,有可能會導緻java build path這裡有些錯誤。
大兄弟的項目如果出現了紅色的感歎号,可以檢查下這裡。
把紅色的移除。
第六坑:
使用這些新功能。大概都需要使用Theme.AppCompat,
而不能使用大兄弟們自定義的預設theme
各位去Manifest那裡把theme改一下。
(也就是values裡面的styles檔案)
以下為正确示範:
跨過以上的系列坑,
大兄弟們這個時候可以舒口氣啦。(呼呼~~)
接下來,終于可以啟動app啦!!
是的,一切僅為了可以啟動app~~
如果想深入使用
CoordinatorLayout
Recyclerview
會有更多的坑
大家自己去搜尋大神的部落格吧。