1. 程式人生 > >android5.06.0新控制元件

android5.06.0新控制元件






Android自5.0後增加了不少新控制元件,幫助開發者實現了更酷更炫的UI效果。可是對於初學者來說,這些新控制元件的用法不像老控制元件那麼簡單,網上相關的使用介紹也不如老控制元件那樣豐富,種種情況無疑加大了我們學習這些新控制元件的難度。為此,博主初步整理了Android在5.0和6.0之後的新增控制元件,及其對應的說明博文,給大家提供一個可資學習和借鑑的索引。


下面是新增控制元件的索引表格:
相容包 名稱 控制元件 引入版本
核心 水波圖形 RippleDrawable Android 5.0
向量圖形 VectorDrawable Android 5.0
向量動畫 AnimatedVectorDrawable Android 5.0
向量動畫監聽器
AnimationCallback Android 6.0
媒體投影管理器 MediaProjectionManager Android 5.0
攝像頭二代camera2 CameraManager Android 5.0
CameraDevice Android 5.0
CameraCaptureSession Android 5.0
電話管理器增加雙卡雙待 TelephonyManager Android 5.0
PDF檔案渲染器 PdfRenderer Android 5.0
任務排程器 JobScheduler Android 5.0
任務服務 JobService Android 5.0
v4 下拉重新整理佈局 SwipeRefreshLayout Android 5.0
抽屜佈局 DrawerLayout Android 5.0
滑動面板佈局 SlidingPaneLayout Android 5.0
巢狀滾動檢視 NestedScrollView Android 5.0
appcompat-v7 工具欄 Toolbar Android 5.0
recyclerview-v7 迴圈檢視 RecyclerView Android 5.0
線性佈局管理器 LinearLayoutManager Android 5.0
網格佈局管理器 GridLayoutManager Android 5.0
瀑布流網格佈局管理器 StaggeredGridLayoutManager Android 5.0
cardview-v7 卡片檢視 CardView Android 5.0
palette-v7 調色盤 Palette Android 5.0
design 提示條 Snackbar Android 5.0
導航檢視 NavigationView Android 5.0
協調佈局 CoordinatorLayout Android 5.0
懸浮按鈕 FloatingActionButton Android 5.0
底部彈窗 BottomSheetBehavior Android 6.0
應用欄佈局 AppBarLayout Android 5.0
可摺疊工具欄佈局 CollapsingToolbarLayout Android 5.0
側滑刪除 SwipeDismissBehavior Android 5.0
標籤佈局 TabLayout Android 5.0
文字輸入佈局 TextInputLayout Android 5.0
文字輸入編輯框 TextInputEditText Android 6.0


以上的新控制元件,在專案中使用的時候,可分為三大類:

1、第一類是核心提供的控制元件,位於SDK的android.jar中。
這個與系統版本有關,每個版本的android.jar是固定的,有在該核心中定義的控制元件才能正常呼叫,沒在核心中定義的控制元件在執行時會扔出類找不到的異常。比如水波圖形RippleDrawable和向量圖形VectorDrawable,這兩個控制元件在Android5.0之後的系統核心中提供,所以只有系統版本不低於5.0的手機才能使用它們,執行4. 系統的手機是無法正常呼叫這兩個控制元件的。

2、第二類是v4相容庫提供的控制元件,位於SDK的android-support-v4.jar中。
v4庫預設會被編譯進App的安裝包,所以它不需要系統核心支援,可直接執行在4.0之後的所有系統上,並且App工程無需手工匯入v4庫。使用v4控制元件唯一需要注意的地方,是佈局檔案中要引用完整路徑的控制元件名稱,如抽屜佈局android.support.v4.widget.DrawerLayout、下拉重新整理佈局android.support.v4.widget.SwipeRefreshLayout等等。

3、第三類是v7相容庫和design庫,它們有各自的庫工程,開發者要在App工程中手工匯入用到的相容庫。
v7與design庫匯入App工程後,編譯出來的App即可相容4.
的系統。使用v7與design庫的控制元件,類似於使用自定義控制元件,不但要在佈局檔案中引用完整路徑的控制元件名稱,還要在根佈局宣告名稱空間(即新增屬性xmlns:app=”http://schemas.android.com/apk/res-auto”),然後方可使用這些控制元件的自定義屬性。這部分控制元件數量最多,實現的介面特效最豐富,而且互相之間存在依賴關係,如design庫依賴於appcompat-v7庫,部分design控制元件如NavigationView還依賴於recyclerview-v7庫,所以若要正確使用design庫的控制元件,往往得同時匯入好幾個相關的相容庫。


Android5.0和6.0之後補充了這麼多新控制元件,自然有部分老控制元件變過時了,下面就列舉部分新舊控制元件的替代關係:
Toolbar:替代ActionBar
RecyclerView:替代ListView和GridView
NestedScrollView:替代ScrollView
Snackbar:替代Toast
FloatingActionButton:替代ImageButton
TextInputEditText:替代EditText
camera2家族:替代Camera





點此檢視Android開發筆記的完整目錄

轉載地址:https://blog.csdn.net/aqi00/article/details/59108336





Android自5.0後增加了不少新控制元件,幫助開發者實現了更酷更炫的UI效果。可是對於初學者來說,這些新控制元件的用法不像老控制元件那麼簡單,網上相關的使用介紹也不如老控制元件那樣豐富,種種情況無疑加大了我們學習這些新控制元件的難度。為此,博主初步整理了Android在5.0和6.0之後的新增控制元件,及其對應的說明博文,給大家提供一個可資學習和借鑑的索引。


下面是新增控制元件的索引表格:
相容包 名稱 控制元件 引入版本
核心 水波圖形 RippleDrawable Android 5.0
向量圖形 VectorDrawable Android 5.0
向量動畫 AnimatedVectorDrawable Android 5.0
向量動畫監聽器 AnimationCallback Android 6.0
媒體投影管理器 MediaProjectionManager Android 5.0
攝像頭二代camera2 CameraManager Android 5.0
CameraDevice Android 5.0
CameraCaptureSession Android 5.0
電話管理器增加雙卡雙待 TelephonyManager Android 5.0
PDF檔案渲染器 PdfRenderer Android 5.0
任務排程器 JobScheduler Android 5.0
任務服務 JobService Android 5.0
v4 下拉重新整理佈局 SwipeRefreshLayout Android 5.0
抽屜佈局 DrawerLayout Android 5.0
滑動面板佈局 SlidingPaneLayout Android 5.0
巢狀滾動檢視 NestedScrollView Android 5.0
appcompat-v7 工具欄 Toolbar Android 5.0
recyclerview-v7 迴圈檢視 RecyclerView Android 5.0
線性佈局管理器 LinearLayoutManager Android 5.0
網格佈局管理器 GridLayoutManager Android 5.0
瀑布流網格佈局管理器 StaggeredGridLayoutManager Android 5.0
cardview-v7 卡片檢視 CardView Android 5.0
palette-v7 調色盤 Palette Android 5.0
design 提示條 Snackbar Android 5.0
導航檢視 NavigationView Android 5.0
協調佈局 CoordinatorLayout Android 5.0
懸浮按鈕 FloatingActionButton Android 5.0
底部彈窗 BottomSheetBehavior Android 6.0
應用欄佈局 AppBarLayout Android 5.0
可摺疊工具欄佈局 CollapsingToolbarLayout Android 5.0
側滑刪除 SwipeDismissBehavior Android 5.0
標籤佈局 TabLayout Android 5.0
文字輸入佈局 TextInputLayout Android 5.0
文字輸入編輯框 TextInputEditText Android 6.0


以上的新控制元件,在專案中使用的時候,可分為三大類:

1、第一類是核心提供的控制元件,位於SDK的android.jar中。
這個與系統版本有關,每個版本的android.jar是固定的,有在該核心中定義的控制元件才能正常呼叫,沒在核心中定義的控制元件在執行時會扔出類找不到的異常。比如水波圖形RippleDrawable和向量圖形VectorDrawable,這兩個控制元件在Android5.0之後的系統核心中提供,所以只有系統版本不低於5.0的手機才能使用它們,執行4. 系統的手機是無法正常呼叫這兩個控制元件的。

2、第二類是v4相容庫提供的控制元件,位於SDK的android-support-v4.jar中。
v4庫預設會被編譯進App的安裝包,所以它不需要系統核心支援,可直接執行在4.0之後的所有系統上,並且App工程無需手工匯入v4庫。使用v4控制元件唯一需要注意的地方,是佈局檔案中要引用完整路徑的控制元件名稱,如抽屜佈局android.support.v4.widget.DrawerLayout、下拉重新整理佈局android.support.v4.widget.SwipeRefreshLayout等等。

3、第三類是v7相容庫和design庫,它們有各自的庫工程,開發者要在App工程中手工匯入用到的相容庫。
v7與design庫匯入App工程後,編譯出來的App即可相容4.
的系統。使用v7與design庫的控制元件,類似於使用自定義控制元件,不但要在佈局檔案中引用完整路徑的控制元件名稱,還要在根佈局宣告名稱空間(即新增屬性xmlns:app=”http://schemas.android.com/apk/res-auto”),然後方可使用這些控制元件的自定義屬性。這部分控制元件數量最多,實現的介面特效最豐富,而且互相之間存在依賴關係,如design庫依賴於appcompat-v7庫,部分design控制元件如NavigationView還依賴於recyclerview-v7庫,所以若要正確使用design庫的控制元件,往往得同時匯入好幾個相關的相容庫。


Android5.0和6.0之後補充了這麼多新控制元件,自然有部分老控制元件變過時了,下面就列舉部分新舊控制元件的替代關係:
Toolbar:替代ActionBar
RecyclerView:替代ListView和GridView
NestedScrollView:替代ScrollView
Snackbar:替代Toast
FloatingActionButton:替代ImageButton
TextInputEditText:替代EditText
camera2家族:替代Camera





點此檢視Android開發筆記的完整目錄