androidappsupport
㈠ 如何使用android-support-v7-appcompat
工具/原料
需要兩個庫:android-support-v4.jar,android-support-v7-appcompat.jar
溫馨提示:這兩個庫最好版本一樣,否則可能會有一些其他問題產生。
這兩個庫可以從sdk下的sdk\extras\android\support中獲取
方法/步驟
首先是在項目中導入這兩個庫
可以通過在項目根目錄創建一個libs文件,然後把這兩個庫拷貝到裡面,然後eclipse刷新一下這個項目,eclipse會智能添加這兩個庫
添加完之後,可能遇到的問題:
一類問題: values\......No resource found
比方說:
res\values\styles.xml:4: error: Error retrieving parent for item: No resource found that matches the given name 'Theme.AppCompat.Light.DarkActionBar'.
對於values這個地方產生的no resource found問題,說明是沒有v7下的資源。
解決方法:
添加資源庫,針對上面的例子,AppCompat這個是v7里的,所以缺少的是v7的資源。從sdk去獲取,路徑是sdk\extras\android\support\v7\appcompat,把這個library通過eclipse導入(import)。然後之前的項目添加該lib,再clean下。這樣上面的問題可以搞定。
二類問題:values-v11,values-v21,values-v17等等下的No resource found
比方說:
appcompat\res\values-v21\styles_base.xml:75: error: Error retrieving parent for item: No resource found that matches the given name 'android:Widget.Material.ActionButton'.
appcompat\res\values-v11\themes_base.xml:178: error: Error: No resource found that matches the given name: attr 'android:windowActionBar'.
appcompat\res\values-v14\themes_base.xml:27: error: Error: No resource found that matches the given name: attr 'android:actionModePasteDrawable'.
對於在values-v11這類針對不同android target載入的values下找不到資源的問題,原因還是一樣,找不到這個target下的資源。
解決方法:
很簡單,把project.properties里的target=android-8或者可能稍微高點,改到target=android-21或者更高(前提是sdk已經下載了該target的庫),然後再clean下項目。這樣這類問題也就解決了,當然你在Manifest里不要忘記加上uses-sdk,來允許最低版本。
最後附上測試寫的actionbar tab加上fragment,在Android2.3.4三星手機上的實現結果
㈡ Android 應用只支持4.0以上還需要support v7兼容包么
若要兼容低版本,則相當於不能使用新版sdk里存在,而舊版本sdk里不存在的內置控制項(一般都在android.widget包里),因為若運行在低版本系統的手機上,會找不到類。
如果想使用怎麼辦呢?這時向下兼容包就發揮作用了,v4的目的是把新的sdk里的控制項和特性帶給1.6+,v7的目的是把新的sdk里的控制項和特性帶給2.1+,這確實是谷歌很負責任的一個行為,要知道iOS就任性的不做向下兼容(要麼你別想用,要麼你給我更新系統!)
建議使用新版sdk的兼容包里的兼容性控制項(一般在android.support.v_.widget包中,兼容包也會跟著sdk內置控制項的特性升級而有所變化,每個版本盡量兼容最新的特性,所以盡量使用跟構建sdk相同版本的兼容包以獲得最多特性支持,可以在對應版本的android SDK的目錄下找到)。
如果基於4.0以上,則兼容包中對應的絕大多數控制項都已經在構建sdk中存在,不需要使用兼容包,畢竟sdk里內置的比support這種為了照顧低版本系統的功能肯定要更強大。
這里說絕大多數,是因為像ViewPager這種常用的控制項確實一直任性的只存在於v4 support中,而原生內置sdk中一直沒有同位體存在。如果你想使用的話還是得引入v4 support(當然也可以去github找個其他的開源實現方式)。
㈢ 如何使用android-support-v7-appcompat
添加V7兼容包(v7 appconpat)
創建一個基於support library代碼的 library project:
確保你已經利用 SDK Manager下載了Android Support Library。
創建一個library項目並且確保需要的JAR文件包含在了項目的build path中:
選擇File > Import。
選擇Existing Android Code Into Workspace 並點擊Next。
瀏覽SDK安裝目錄,並進入Support Library目錄下。例如,如果你要添加appcompat項目,瀏覽 <sdk>/extras/android/support/v7/appcompat/。
點擊Finish引入項目。對於v7 appcompat項目,你將看到一個標題為android-support-v7-appcompat的新項目。
在新項目中,展開libs/ 文件夾,右鍵點擊每一個.jar文件,並選擇Build Path > Add to Build Path。例如,當創建v7 appcompat項目時,同時將android-support-v4.jar和android-support-v7-appcompat.jar文件添加到build path中。
右鍵點擊library項目文件夾並選擇Build Path > Configure Build Path。
在Order and Export選項中,在剛剛添加到build path中的.jar文件上打勾,這時這些文件成為項目可用的了並依賴於這個library項目。例如,appcompat項目要求同時導出android-support-v4.jar和android-support-v7-appcompat.jar文件。
去掉Android Dependencies上的對勾。
點擊OK完成設置
現在你擁有了一個包含你選擇的Support Library的library項目,你可以在一個或多個應用項目中利用這個Support Library。
現在我們要向應用工程(需要加入Support Library的工程)添加庫:
在項目瀏覽器中右鍵單擊你的項目,選擇Properties。
在左邊的分類面板中,選擇Android。
在Library面板中,點擊Add。
選擇庫項目,然後點擊OK。例如,appcompat項目會在列表中顯示為android-support-v7-appcompat。
在properties窗口中,點擊OK。
㈣ 如何使用android-support-v7-appcompat
綜述:通過SDK Manager獲取Support Library。
1、打開Android SDK Manager。
2、在SDK Manager窗口,滾動到Package List的末尾,找到Extra文件夾,如果需要的話打開文件夾顯示它的內容。
3、選擇Android Support Library項目。
注意:如果你使用的是Android Studio開發,選擇並安裝Android Support Repository項目而不是Android Support Library項目。
4、點擊Install packages按鈕。
5、下載完成後,SDK會將Support Library文件安裝到你已經存在的Android SDK目錄下。
㈤ Android Support v4,v7,v13的區別和應用場景
高版本的 SDK里提供了新的東西,如果你用了這些東西開發應用,然後你又想支持低版本SDK的機器的時候你就需要把新的東西直接導入你的apk裡面,這樣你的apk裝到低版本的機器里去也能運行。
Android Support v4 是最早(2011年4月份)實現的庫。用在Android1.6 (API lever 4)或者更高版本之上。它包含了相對V4, V13大的多的功能。
例
如:Fragment,NotificationCompat,LoadBroadcastManager,ViewPager,PageTabAtrip,Loader,FileProvider
等。
詳細API 參考 http://developer.android.com/reference/android/support/v4/app/package-summary.html
Android Support v7: 這個包是為了考慮Android2.1(API level 7)
及以上版本而設計的,但是v7是要依賴v4這個包的,也就是如果要使用,兩個包得同時
被引用。
v7支持了Action Bar。
Android Support v13:這個包的設計是為了android 3.2及更高版本的,一般我們都不常用,平板開發中能用到
㈥ android-support-v7-appcompat 小紅叉叉 解決方案
更新了ADT後,這個小紅叉叉讓我很是頭疼,網上找一圈後發現解決辦法如下:
先是打開Window-> Android SDK Manager
接著,對著android-support-v7-appcompat ,右擊-> Properties->
將Project Build Target 選擇對應的版本號,這里應該選擇 Android 6.0,23號版本。如圖。
最後,Project -> Clean 一下就可以了。