今年新鮮出爐的30個流行Android庫,你一定需要
作者|Michal Bialas
2017年快過去了,你年初的定的目標都快完成了嗎?總結過去三個月內發布的 最新的30 個 Android 庫和項目。你一定需要,建議收藏!讓你事半功倍
1.MaterialStepperView
它是用Material Design實現 Steppers的 。
目前,Stepper 只有垂直視圖,但將來會有更多的風格。你可以嘗試一下,如下圖:
你可以自定義 normal/active 兩個狀態的顏色,完成圖標,開啟動畫並設置動畫時長。可通過Github上的設置項和樣式查閱所有設置項。
該庫支持 API 17+,詳情請查閱wiki文檔。
鏈接:
https://github.com/fython/MaterialStepperView
2. MultiSnapRecyclerView
這是分屏滾動的 Android 庫。MultiSnapRecyclerView 為 RecyclerView 提供了分屏功能。
目前提供的功能有:
-
start
,end
和center
三個位置的吸附; -
snap count
指定要分屏的數量; -
支持水平和垂直分屏;
-
滾動時的回調。
鏈接:
https://github.com/TakuSemba/MultiSnapRecyclerView
3. Garland View for Android
該庫實現如下的布局:
GarlandView 外部是一個水平滾動的視圖,視圖內的每一個子視圖可垂直滾動。
你可以在 README 中找到其他重要信息,還有一個示例 App,該庫支持 API 19 及更高版本。
鏈接:
https://github.com/Ramotion/garland-view-android
4. VegaLayoutManager
這是一個自定義的布局管理器
——滾動時縮小並淡出頭部。這是受到 Dribble項目的啟發。
鏈接:
https://github.com/xmuSistone/VegaLayoutManager
5. ExpandableLayout
這個庫的名字不言而喻,它是一個基於LinearLayout
的可擴展的布局。
README 裏含有你啟動時需要的所有信息,另外,還有一個示例 App 可以幫助你快速跳轉到代碼中。
鏈接:
https://github.com/iammert/ExpandableLayout
6. SwipeBackLayout
SwipeBackLayout
允許你使用手勢返回上一個界面。你可以設置滑動方向,如從左到右、從右到左、從頂部到底部、從底部到頂部。
你還可以設置是否只能從邊緣滑動。
SwipeBackLayout
只能包含一個子布局,例如:
-
LinearLayout
,RelativeLayout
,FrameLayout
,TableLayout
等。 -
ScrollView
,HorizontalScrollView
,NestedScrollView
等。 -
RecyclerView
,AbsListView
(ListView
) 等子類。 -
ViewPager
,WebView
等。
該項目裏面有一個詳細說明的文檔、示例 APP 和一個 APK。
鏈接:
https://github.com/gongwen/SwipeBackLayout
7. SmartCropper
這是一個可以智能剪裁圖像的庫,可以識別邊框並修正裁剪後的圖像,適用於身份證、名片、文件等其他圖片文件的裁剪。
特征:
-
以智能的方式裁剪圖片,還可以識別邊框;
-
支持拖動、放大效果以提升定位體驗;
-
使用透視變換裁剪, 可以修正先前裁剪的圖片;
-
支持多種 UI 設置,如輔助線、蒙版、設置錨點、放大等效果。
目前,此庫采用優化點算法,CropImageView
具有選擇放大效果,而且它可以使用CropImageView XML
來進行設置。
鏈接:
https://github.com/pqpo/SmartCropper
8. Date Range Picker
Date Range Picker 是具有改進 UI 的自定義日期範圍選擇器。
項目的簡介寫得很好,易於理解。
鏈接:
https://github.com/savvisingh/DateRangePicker
9. StoriesProgressView
我們都知道 Facebook 和 Instagram 展現在他們 App 上的 Stories ,這是介紹StoriesProgressView
的一個庫,它可以擴展LinearLayout
和允許你添加以下視圖。
該項目包含一個簡短但詳細的 README 以及示例 App。
鏈接:
https://github.com/shts/StoriesProgressView
10. CosmoCalendar
這是一個可以自定義日歷的庫,它可以提供很多功能和 UI 設置,例如:
-
改變日歷方向;
-
自定義文本顏色;
-
設置類型和顏色;
-
定義導航按鈕等;
-
還有很多其他功能;
鏈接:
https://github.com/AppliKeySolutions/CosmoCalendar
11. Reflow Text Animator
相信大家都聽過 Plaid app,這是由 Shazam 工程團隊開發的。
它是 Plaid’s ReflowText 的端口,無論它們的大小或風格怎樣,都可以輕松地在同級的 TextView 之間進行轉換。
這個庫很容易使用,快去試試吧!
鏈接:
https://github.com/shazam/reflow-animator
12. AdaptiveIconPlayground
這不是一個庫,而是由 Nick Butcher 開發的用於試驗自適應圖標的 AndroidApp。根據 README:
此應用程序可以從已安裝的 App 中查找支持自適應圖標的 APP,並將其顯示在網格中,然後你可以切換不同的蒙版形狀以匹配不同設備的顯示效果。
目前提供兩種視覺效果:
滾動效果;
觸摸時的尺寸縮放視差效果。
鏈接:
https://github.com/nickbutcher/AdaptiveIconPlayground
13.Tivi
Tivi 是跟蹤電視節目的 App,它與 Track.tv 相連接,它的開發者是 Chris Banes,雖然這項開發工作仍在進行中,但它使用的都是最前沿的組件、庫和工具,其中包括 Kotlin、RxJava 2、所有架構組件(Room,LiveData 和 Lifecycle-components)。
鏈接:https://github.com/chrisbanes/tivi
14.RxIdler
這是 Espresso 的IdlingResource
,它的開發者是 Square Engineering,它支持 RxJava 1 和 RxJava 2。
祝你用得愉快!
鏈接:
https://github.com/square/RxIdler
15.MRichEditor
這是一個豐富的文本編輯器(基於 summernote)。它支持多種功能,包括粗體、斜體、下劃線、快捷鍵、標題(包括六級標題)、段落、引用,有(無)序列表、代碼、水平規則、鏈接、圖像,對齊方式(居中、兩端對齊、左對齊、右對齊)、下標、上標、字體名稱和大小、縮進、減少縮進、撤消 / 還原。
在這種情況下,你需要仔細觀察示例 App,因為它幾乎沒有文檔供你參考。
鏈接:
https://github.com/Even201314/MRichEditor
16.Android Clean Architecture Boilerplate
這是由Buffer 團隊和 Joe Birch 開發的示例 App 展示了一種 Android 應用程序的幹凈架構。
創建此樣板的原因:
實驗模塊化;
分享一些幹凈架構實現方式;
一開始采用幹凈架構能應對未來復雜的項目需求。
該項目的 UI 和單元測試都是用 Kotlin 編寫。
它的文檔裏有詳盡的介紹,非常適合想學習的開發者,力薦!
鏈接:https://github.com/bufferapp/android-clean-architecture-boilerplate
17.RxJava2Debug
18. Resizer
Resizer 是一個輕量級的,是易於使用的 Android 庫,用於圖像縮放。它允許你將圖像文件放大或縮小的同時,保持寬高比。
這個項目的靈感來自於 Compressor。
說明書:
Minimum SDK: API 21 默認設置: targetLength: 1080 quality: 80 outputFormat: JPEG outputDirPath: the external files directory of your app 支持的輸入格式: BMP GIF JPEG PNG WEBP 支持的輸出格式 JPEG PNG WEBP 支持的圖像質量範圍:0~100 值越大,圖像質量越好同時圖片越大 PNG,無損格式,會忽略該設置
鏈接:https://github.com/hkk595/Resizer
19.FaceDetector
該庫允許你在相機裏預覽圖片時,實時檢測人臉。它與 Fotoapparat 庫非常相似,但它也支持其他相機庫和源。
它的使用過程十分簡單,而且項目記錄相當詳細。
鏈接:
https://github.com/Fotoapparat/FaceDetector
20.RxGps
MapMe 與 Google Maps 和 Mapbox 配合使用,README 裏的內容很詳細,而且它是用 Kotlin 編寫的。
鏈接:https://github.com/TradeMe/MapMe
22. RevelyGradient
該庫用於顏色漸變管理。
您可以用 Java 或 Kotlin 編寫它,項目附帶的說明文檔很簡短,但足夠你能夠使用它。
鏈接:https://github.com/revely-inc/co.revely.gradient
23. LiteUtilities
24.KOIN
KOIN 是一個使用 Kotlin 來編寫的依賴註入框架,它的功能是能夠推動做事的進度。
25.koptional
26. Parallax
這是一個模擬 Apple TV 視差圖標的庫。
它的README寫得非常好,值得一試。
鏈接:https://github.com/imablanco/Parallax
27.droid-vizu
Droid-vizu 旨在通過輕松交換渲染器來獲得酷炫效果,從而提供定制的可視化效果。
鏈接:https://github.com/wotomas/droid-vizu
鏈接:https://github.com/cesarferreira/drone
鏈接:https://github.com/cesarferreira/drone
30.Reagent
Reagent 是 Jake Wharton 總結的未來響應式庫的體驗。請不要使用。
鏈接:https://github.com/JakeWharton/Reagent
今年新鮮出爐的30個流行Android庫,你一定需要