1. 程式人生 > >Android 支援庫功能指南

Android 支援庫功能指南

原文地址

https://developer.android.com/topic/libraries/support-library/features.html


支援庫為構建應用程式提供了廣泛的類,從基本應用程式元件,使用者介面小部件,媒體處理到電視應用程式元件。許多類是向後相容的實現,但其中一些是自己的新功能。

本文件概述了支援庫中可用功能的重要類別,以及構建應用程式時應該瞭解的特定類。

有關如何將支援庫程式碼新增到您的應用開發專案的資訊,請參閱支援庫安裝有關如何在專案中包含特定支援庫軟體包的資訊,請參閱 支援庫軟體包

應用元件


這些支援庫類提供了重要的核心平臺功能的向後相容的實現。

這些實現通常會擴充套件該類的早期版本,以處理新版本中新增的新方法和新功能。其中一些類是完整的框架API的靜態實現。

使用者介面


這些支援庫類提供了關鍵使用者介面小部件和行為的實現,並幫助您在早期的裝置上建立更現代的應用程式介面。一些這些小部件只能通過支援庫獲得。

通用佈局容器

這些支援類提供了可以適應不同設計用例的使用者介面容器。

  • RecyclerView - 建立用於顯示長列表的佈局,使用策略來避免高記憶體消耗。這個類允許你建立一個有限的視窗檢視到一個更大的資料集,從而避免在顯示列表時消耗大量的記憶體。有關使用的更多資訊RecyclerView,請參閱Recycler View 指南。
  • ViewPager - 提供允許使用者左右翻頁資料的佈局。
  • GridLayout - 提供一個矩形網格中的孩子的佈局,支援連續單元格的任意跨度和靈活的空間分佈。此類提供GridLayoutAndroid 4.0(API級別14)中引入的向後相容版本
  • PercentFrameLayout並且PercentRelativeLayout- 提供支援其子檢視和內容的基於百分比的尺寸和邊界的佈局。

注:ViewPagerRecyclerViewPercentFrameLayoutPercentRelativeLayout類只能從支援庫。

專用佈局容器

這些支援類提供了特定佈局模式的相容實現,例如可以從螢幕邊緣拉出的抽屜檢視,滑動面板和列表中的巢狀列表。

  • DrawerLayout- 建立一個佈局,允許從檢視視窗的邊緣拉出互動式 抽屜檢視
  • SlidingPaneLayout - 提供水平的多窗格佈局,用於應用程式使用者介面的頂層,用於建立可平滑適應多種不同螢幕尺寸的佈局,在較大的螢幕上展開並摺疊以適應較小的螢幕。
  • NestedScrollView - 支援巢狀其他滾動檢視的滾動佈局,使您可以建立列表,並使用包含其他子項列表的專案。這些巢狀列表可以包含水平或垂直滾動​​的專案,與父列表分開。
  • SwipeRefreshLayout - 提供一個佈局來支援用手指輕掃手勢重新整理列表或其他佈局的資料。

檢視,對話方塊和小部件

支援庫提供了許多用於顯示內容和在佈局中提供使用者互動元素的類。

  • CardView - 用於建立Material Design樣式顯示卡的支援庫自定義類。這個類是基於FrameLayout的圓角和陰影。
  • AppCompatDialogFragment- 通過擴充套件DialogFragment和使用提供一致風格的對話方塊AppCompatDialog
  • NotificationCompat - 以向下相容的方式為新的通知樣式提供支援。
  • SearchView - 為使用者提供一個類,用於輸入搜尋查詢並將請求提交給主要用於應用程式欄的搜尋提供程式。

材料設計


支援庫提供了許多實現Material Design使用者介面建議的類。android.support.design中提供了許多這些類

  • CoordinatorLayout - 為包含Material Design元件和行為的佈局提供頂級容器。這個類也可以作為一個容器與一個或多個子檢視進行特定的互動。
  • AppBarLayout- 提供Material Design 應用欄概念的許多滾動功能的實現 
  • FloatingActionButton - 建立浮動按鈕來顯示特殊型別的提升動作。此Material Design使用者介面元素顯示為浮動在應用程式使用者介面上方的圓圈圖示。有關此使用者介面元素的更多資訊,請參閱 浮動操作按鈕設計建議。
  • TabLayout - 提供顯示標籤頁面的佈局。這個小部件是專為與ViewPager該類一起使用而設計的
  • Snackbar- 提供一個小部件,用於使用Material Design小吃棒模型顯示有關操作的輕量級反饋

影象


android.support.graphics.drawable軟體包提供對向量繪圖的支援 通過使用向量繪圖,您可以用XML中定義的單個向量圖形替換多個PNG資源。

VectorDrawableCompat提供對API級別9及以上的向量繪圖的支援。AnimatedVectorDrawableCompat為API級別11及以上的動畫向量繪圖提供支援。

無障礙


android.support.v4.view.accessibility軟體包提供了相容性類,用於實現API級別14及更高版本中引入的輔助功能,這些輔助功能允許輔助功能服務觀察和識別使用者與螢幕上顯示的專案的互動。

媒體播放


Android支援庫為執行早於Android 4.1(API級別16)的平臺版本的裝置提供媒體路由器功能的後端支援這些類允許控制連線的Android裝置上的媒體播放:

  • MediaRouter - 使應用程式能夠控制從當前裝置到外部揚聲器和目標裝置的媒體通道和流的路由。
  • MediaControllerCompat - 允許應用與正在進行的媒體會話進行互動。應用程式可以通過此機制提供媒體控制按鈕,並將其他播放命令傳送到會話。
  • MediaSessionCompat - 提供用於媒體播放的遠端控制介面,實現與其他應用程式或單獨裝置上的媒體控制器,音量鍵,媒體按鈕和傳輸控制元件的互動。

電視應用


Android SDK提供庫來支援大螢幕及其相關控制器等外觀因素。應用程式可以依賴相應的支援庫來提供各種平臺版本的功能,並且可以在外部螢幕,揚聲器和其他目標裝置上提供內容。

穿應用程式


Android SDK提供庫來支援手錶。這些庫為佩戴手錶的使用者提供了可用的功能。

公用事業


Android支援庫提供了許多沒有內建到框架中的功能。這些庫提供了一系列應用程式可以使用的工具。