android的support包有什麼?

2021-07-14 04:56:33 字數 2775 閱讀 3168

隨著 android 5.0 lollipop 的發布,android 又為我們提供了更多的支援包,但是我相信大部分開發者都同我之前一樣不知道這些包裡究竟有些什麼東西,我們應該在什麼時候使用它。現在,我們就來逐個看看每乙個版本的 support 包中所擁有的東西,讓用到他的時候不再迷茫。

首先,你需要了解每乙個 support 包版本字尾 vx 所代表的含義。當然我相信來看部落格的諸位都一定知道 android 對於每乙個版本都有乙個版本號,例如2.1是7,4.0是14,5.0是21。而這裡,v 之後的數字,就代表著他能夠被使用的最低版本等級,之所以無法在更低版本進行使用的原因,是因為隨著版本的公升級,在新版本中有很多之前不支援的特性或者 api,因此如果你在老版本中使用了這些支援包,就可能會導致應用崩潰。

現在,我們從頭開始逐個瀏覽目前所支援的 support 包:

(1)support-v4

support-v4包算是 android 最低等級的支援包。所謂的 v4,代表著它最低支援 android1.6(api level4),這個版本算得上是乙個真正意義上比較成熟的 android版本,更何況現在我們寫應用的時候一般都只最低支援到 android 2.x 系統,對於1.x 的系統基本已經已經完全拋棄了,因此你可已經他作為最基本的系統元件使用。

在 support-v4包中,它所擁有的類還是很多的,主要包含了對應用元件的支援,使用者互動體驗的一些工具類,一些資料網路方面的工具類,相面我們將詳細來看看它裡面具體的一些類。

1.系統元件部分

fragment:其實 fragment 是直到 android3.0才正式進入 android 框架體系的,但是 android 為了低版本的相容,因此他幫我們在低版本也適配了 fragment 框架

notificationcompat:這是通知欄的一些適配,可以幫助你在低版本的通知欄顯示更加豐富的資訊

localbroadcastmanager:這個是用於本地廣播通知的,當你希望傳送的通知只被本應用接收時,你就應該使用它

2.使用者介面互動部分

viewpager,這個相信我不用怎麼說了,他主要用於幫助我們進行介面間的滑動互動

pagertitlestrip,pagertabstrip 這兩個算是 viewpager 的幫助類吧,他們的作用是進行 tab 欄的切換輔助顯示

drawerlayout,主要用於側滑欄的實現

slidingpanelayout,這個類也是用於側滑欄的實現,和 drawerlayout 不同的是,drawerlayout 側滑欄出來的時候,預設是覆蓋在當前頁面上,而 slidingpanelayout 則是會將當前頁面移走。

3. accessbility訪問的幫助類

explorebytouchhelper,幫助自定義 view 實現 accessibility 的工具類

accessbilityeventcompat, accessbilitynodeinfocompat, accessbilitynodeprovidercompat, accessbilitydelegatecompat,這幾個都是用作 accessibility 功能適配的類

4.資料訪問幫助類

loader,主要用於非同步載入資料

fileprovider,提**用間的檔案分享功能

(2)support-v7

這個包的主要作用是為了在低版本實現 android 的 holo 風格介面而引入的,與之類似的有乙個開源專案叫做 sherlockactionbar

2.cardview

卡片布局是最近在 android5.0發布的時候才引入的新包,在我看來,他主要效果是讓應用進行卡片花顯示

3.gridlayout

網格布局能夠幫助你將整個布局按照一格兩格的格仔形式進行排列

4.mediarouter

5.palette

這個包也是最新出來的,他的作用是幫助 android 實現他的 materialdesign,讓你的 actionbar 能夠根據介面進行對應的顏色改變

7.recyclerview

這個包同樣也是剛出來的,他的作用是替換 listview 和 gridview,但是可惜是沒有實現 onitemclick 這些介面,你需要自己處理它

(3)support-v8

support-v8中其實只有一格特性,就是用來渲染指令碼

(4)support-v13

這個包的作用主要是為 android3.2級以上的系統提供更多地 framgnet 特性支援,使用它的原因在於,android-support-v4包中雖然也對 fragment 做了支援,由於要相容低版本,導致他是自行實現的 fragment 效果,在高版本的 fragment 的一些特性丟失了,而對於 v13以上的 sdk 版本,我們可以使用更加有效,特性更多的**

(5)support-v17

這個包得主要作用是用於支援電視裝置,並為電視裝置提供了很多元件

例如下面的:

browsefragment, detailfragment, playbasckoverlayfragment, searchfragment

但是原諒我沒有做過 android tv 開發,我也不知道他們的用處是什麼,如果真的想要檢視,請去官網看看吧

Android SDK中的Support相容包詳解

背景 support library 我們都知道android一些sdk比較 為此google官方提供了android support library package 系列的包來保證高版本sdk開發的向下相容性,所以你可能經常看到v4,v7,v13這些數字,首先我們就來理清楚這些數字的含義,以及它們...

Support包下的物件池

今天偶然發現support包下內建了通用型物件池 android.support.v4.util.pool 複製 物件池的設定很簡單 inte ce for managing a pool of objects.param the pooled type.public static inte ce ...

CSS中 support的用法

這段時間一直在除錯瀏覽器的相容性問題,了解到了 support的這個屬性,記錄下 css中的 support主要是用於檢測瀏覽器是否支援css的某個屬性,其實就是條件判斷,如果支援某個屬性,你可以寫一套樣式,如果不支援某個屬性,你也可以提供另外一套樣式作為替補。但是這裡有一點需要注意的是 suppo...