較新的Android開源庫

原文地址

1.Coil

github地址:https://github.com/coil-kt/coil
kotlin編寫
使用協程編寫的Android圖片加載庫。相比於Glide,Picasso,Fresco 它更快速、輕量、易上手、現代的Android加載庫。

支持GiF和SVG,同時支持四種默認的圖像變換: 模糊效果
圓形灰階圓角等等

基礎代碼爲:

imageView.load(“https://www.example.com/image.jpg") {
 crossfade(true)
 placeholder(R.drawable.image)
 transformations(CircleCropTransformation())
}

我這篇文章對Coil有個簡單的用法介紹

2.MultiSearchView

在這裏插入圖片描述
github地址: https://github.com/iammert/MultiSearchView
kotlin 編寫
很nice的動畫 也很容易自定義
雖然版本只有0.1 但感覺大有可爲吧

3.CalendarView

在這裏插入圖片描述
github地址:https://github.com/kizitonwose/CalendarView
kotlin 編寫
我個人也寫過很多次的CalendarView,主要是UI沒有成型,整個設計龍飛鳳舞。
它是由RecyclerView編寫
提供瞭如下基本功能:

  1. 單選\範圍選擇
  2. 星期\月份選擇
  3. 日期邊界
  4. 自定義日曆View
  5. 橫向\豎直滑動
  6. 完全自定義視圖
  7. 其它更多功能…

文檔很全面,也有很多例子。Dome App展示了各種功能,大家可以自己查閱。

4.Bubble Navigation

在這裏插入圖片描述
github地址:https://github.com/gauravk95/bubble-navigation
kotlin 編寫
輕量級的Navigation bar,其它功能如下:

  1. 兩種類型的NavigationView BubbleNavigationConstraintView提供 spread,inside,packed模式(這個和ConstranitLayout模式一樣) BubbleNavigationLinearView 提供均分模式
  2. 高度自定義
  3. 同時你還可以加上小紅點,它提供了BubbleTaggleView 😃 想法真周到啊

5.FabFilter

在這裏插入圖片描述
github 地址: https://github.com/nikhilpanju/FabFilter
這個lib主要是使用動畫展示UI的,蠻好看的,而且沒使用到MotionLayout.
這個項目我蠻喜歡的,很有現代感。

6.SmoothBottomBar

在這裏插入圖片描述
kotlin 編寫
github地址:https://github.com/ibrahimsn98/SmoothBottomBar
它的介紹是Andorid輕量級的底部導航欄,雖然很小,但是很細膩,值得追求細節的騷年嘗試。

7.android-showcase

在這裏插入圖片描述
github地址爲:https://github.com/igorwojda/android-showcase
kotlin 編寫
首先它是一個完整的項目,有很多東西值得我們學習:

  1. 100% kotlin
  2. 現代的APP建構(Model-View-ViewModel, Model-View-Intent)
  3. 使用了Andorid Jetpack
  4. 單Activity架構(整個App只使用了一個Activity),使用了navigation component管理fragment
  5. 響應式UI
  6. 提供了CI
  7. 提供了測試代碼
  8. 靜態分析工具
  9. 注入依賴
  10. MD設計

在我個人看來,它麻雀雖小,但是給我們提供了很多可以學習的東西。大家可以看他的Readme文件,非常全面和細緻。

8.Balloon

在這裏插入圖片描述
github地址:https://github.com/skydoves/Balloon
kotlin編寫
簡單來說,這個庫提供了一種輕量級的popWindow方式,你可以在任意的view的任意位置放置popWindow。一位年輕的韓國小哥寫的。此時希望韓國肺炎早點好吧。

9.LiquidSwipe

在這裏插入圖片描述
github地址: https://github.com/Chrisvin/LiquidSwipe
kotlin 編寫
只能說這個框架牛逼,牛逼的不僅是想象力,更重要的是它居然實現了。簡單來說就是ViewPager上切換Item的方式,以前我們使用Transformer比較多,但是它這種方式應該是自定義了自己的ViewPager,翻看了一下源碼叫LiquidSwipeViewPager,而不是我們使用的ViewPager。所以如果你想使用這種方式,估計更改代價有些大。 而且它目前支持的最低版本是minSdk 21。

10.Croppy

在這裏插入圖片描述
github地址:https://github.com/lyrebirdstudio/Croppy
kotlin 語言編寫
應該又是一個很nice的圖片裁剪框架了,主要有以下幾個特色:

  1. 雙擊聚焦
  2. 手勢放大縮小
  3. 任意的裁剪比例(1:1,16:9,3:5都可以)
  4. 裁剪時自動居中
  5. 裁剪時操作動畫

11.Climpse在這裏插入圖片描述

github地址:https://github.com/the-super-toys/glimpse-android

看上面的截圖我們知道這個也是一個圖片裁剪框架,但是它是智能的!!!對的,它的確是經過TensorFlow Lite訓練的得來的,我覺得是這是Android未來的一種趨勢,和AI結合再服務人類。雖然它現在還不能用於生產環境,但是值得我們去學習一下。

12.RubberPicker

在這裏插入圖片描述
kotlin 編寫
github地址爲:https://github.com/Chrisvin/RubberPicker
看圖就感覺很俏皮的樣子,源碼大家看吧,很有意思啊。

13.AndroidFastScroll

在這裏插入圖片描述
github地址爲:https://github.com/zhanghai/AndroidFastScroll
這個應該是一位中國小哥寫的,主要是看他github名字
主要功能有:

  1. 完全功能的定製;
  2. 容易上手
  3. 多種View的擴展:RecyclerView、ScrollView、NestedScrollView、WebView等等
  4. 支持設置scrollbar的padding
  5. 充分的解構:觸摸邏輯、動畫和滑動的邏輯

14.Switcher

在這裏插入圖片描述
github地址:https://github.com/bitvale/Switcher
kotlin 編寫
話不多說,流暢的動畫說明一切

15.StfalconImageViewer

在這裏插入圖片描述
github地址爲:https://github.com/stfalcon-studio/StfalconImageViewer
這個項目比較老,早在2018年就出現了。項目本身比較簡單,但是它包含了全屏圖片預覽,同時支持了共享圖片過渡(過渡動畫)、縮放功能、滑動關閉手勢等等。

16.Store 4

dropbox的Store第四個迭代版本,用於異步數據加載和緩存
github地址爲:https://github.com/dropbox/Store
kotlin編寫
它簡化了獲取、分享、存儲和恢復數據。Store和存儲模式相似, 使用公開的協程API構建,遵循單向數據流API。 Store提供了一系列在UI元素和數據操作方面的抽象。

17.Broccoli

在這裏插入圖片描述
github地址爲:https://github.com/samlss/Broccoli
數據加載時的PlaceHolder,樣子比較可愛。同時在RecyclerView中也可以使用。

18.ProgressButton

[外鏈圖片轉存失敗,源站可能有防盜鏈機制,建議將圖片保存下來直接上傳(img-bTENazzF-1583657913733)(https://note.youdao.com/src/WEBRESOURCEf87a89791686dbe0f05887c7e6f52871)]
在這裏插入圖片描述
在這裏插入圖片描述

github地址:https://github.com/razir/ProgressButton
主要特色爲:

  1. 無需佈局更改
  2. 集成代碼非常少
  3. 配置非常容易
  4. 可自定義
  5. 內置淡入淡出動畫

19.GradientView

在這裏插入圖片描述
github地址爲:https://github.com/lopspower/GradientView
看上去比較簡單,大多數人都可以實現,只是作者使用了非常簡單的方法實現了。

20.Contour

在這裏插入圖片描述
github地址爲:https://github.com/cashapp/contour
來自Square大廠,是一款類型安全的、kotlin first的、爲了複雜佈局(Layout)的庫
它當前更新非常火熱,期待它就像OKHttp,Retrofit一樣火遍全球吧
github上的簡介爲 : Layouts with lambdas(使用lambdas表達式構建Layout)
Contour的目標是 成爲可能最薄的Andorid佈局封裝(這裏的最薄,我的理解就是對原生的影響最小)。
它允許你在純Kotlin中不使用佈局規則構建複雜的View佈局,不需要什麼XML了。
它最好的比較就是ConstraintLayout了,但是它不需要在XML中定義constraints,你只需要提供可執行的lambdas表達式即可
我認識這個想法很好,特別是我們這些不想寫XML佈局的人,太南了…

21.Orbit MVI

來自人工智能公司Babylon Health(初創公司,致力於打造人工智能診療平臺,國內已與Tencent合作)開發框架。是一款基於Model-View-Intent(MVI)的框架。

在這裏插入圖片描述
github地址爲:https://github.com/babylonhealth/orbit-mvi
Orbit在爲你開發實現功能時,提供了儘可能小的的結構,使其能簡單易用,同時讓你放心使用RxJava。
看看它的文檔,非常清晰和仔細。這個框架我沒有仔細研究,有時間可以寫一遍文章試試。

22. CircularProgressBar

在這裏插入圖片描述
github地址爲:https://github.com/lopspower/CircularProgressBar
大家看圖,如果覺得有必要的話 可以學習一下。

23. Waterfall Toolbar

在這裏插入圖片描述
github地址爲:https://github.com/hugocbpassos/waterfall-toolbar
我司以前就要求實現這個功能,RecyclerView滑動的時候,向上滑動toolbar會出現陰影,但是RecyclerView滑到頂部時,toolbar陰影消失。來看看別人是怎麼實現的吧。

24. Press

在這裏插入圖片描述
github地址:https://github.com/saket/press
它並不是一個庫,而是一個完整的app。特別適合要開發markdown的童靴,具有借鑑意義哦。

25. AndroidColorX

在這裏插入圖片描述
github地址爲: https://github.com/JorgeCastilloPrz/AndroidColorX
這裏主要是學習kotlin擴展函數,是基於 AndroidX 的 ColorUtils 進行擴展的

26. IndicatorScrollView

github地址爲:https://github.com/skydoves/IndicatorScrollView
不知道怎麼形容這個lib,不過還是那句話:牛逼!!它是基於NestScrollView的,所以還是可以學習一波的。

27. Cyanea

在這裏插入圖片描述
github地址爲:https://github.com/jaredrummler/Cyanea
一款App 主題的引擎,它可以允許你自動更改主題。但是看了一下源碼,可能與現有的Activity耦合比較大,不要繼承它CyaneaAppCompatActivity,不過他也提供了CyaneaDelegate接口代理。可以學習一波。

28. Material Dialogs for Android

在這裏插入圖片描述
github地址爲:https://github.com/PatilShreyas/MaterialDialog-Android
很漂亮、有風格的對話框.
不過看動畫的形式和風格,應該是使用了 AirBnb的 Lottie框架,不過還是很好看的。

29. Uniflow

github地址爲:https://github.com/uniflow-kt/uniflow-kt

它演示了在 Android 和 kotlin 中簡單的單向數據流。使用了 kotlin 協程,提供了一下幾個關鍵點:

  1. 在純 kotlin 中提供了明智的方式編寫數據流
  2. Andorid 的擴展使你更加註重於 狀態和事件
  3. kotlin 協程
  4. 容易測試
  5. 使用Arrow進行的函數式編程

30.Android MotionLayout Carousel

在這裏插入圖片描述
github地址爲:https://github.com/faob-dev/MotionLayoutCarousel
這也是一個項目,是給我們展示如何使用MotionLayout實現一個簡單的輪播效果,雖然我們有現成的ViewPager作爲輪播圖,但是使用MotionLayout嘗試一下也不失爲新的開始。
雖然它還沒有readme 但是代碼非常的直接 大家可以下載看看。

總結

這30個庫或者項目 star並不多,因爲大多數非常新,有的就是這幾天纔開始更新(今天是2020/03/08),我感覺在接下來的日子,它們給我們帶來不一樣的體驗,同時我也感覺 Android 開發
可能更需要 good idea 吧。

                                </div>
            <link href="https://csdnimg.cn/release/phoenix/mdeditor/markdown_views-60ecaf1f42.css" rel="stylesheet">
                            </div>
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章