最近準備梳理一下Android開發的相關知識,看到一個很好地文章:Android開源項目分類彙總,當然這篇文章也早就被轉載過好多次了,換之以“據說年薪30萬的Android程序員必須知道的帖子”的標題,不禁佩服標題的魅力,毫無疑問後者會吸引更多地關注。且罷,內容纔是王道,這篇文章也爲我之後的學習提供了路徑,當然個人感覺內容太多,先挑一些感興趣的學着吧,畢竟有興趣纔有動力!
在制定自己計劃之前,先看看原文的大綱:
Android開源項目第一篇——個性化控件(View)篇
包括ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style、其他
Android開源項目第二篇——工具庫篇
包括依賴注入、圖片緩存、網絡相關、數據庫ORM工具包、Android公共庫、高版本向低版本兼容庫、多媒體、事件總線、傳感器、安全、插件化、文件、其他
Android開源項目第三篇——優秀項目篇
比較有意思的完整的Android項目
Android開源項目第四篇——開發及測試工具篇
包括開發效率工具、開發自測相關、測試工具、開發及編譯環境、其他
Android開源項目第五篇——優秀個人和團體篇
樂於分享並且有一些很不錯的開源項目的個人和組織,包括JakeWharton、Chris Banes、Koushik Dutta等大牛
一、ListView
1、android-Ultra-Pull-to-Refresh
下拉刷新,繼承於ViewGroup可以包含任何View。功能甚至比SwipeRefreshLayout強大。使用起來非常簡單。良好的設計,如果你想定製自己的UI樣式,非常簡單,就像給ListView加一個Header View那麼簡單。支持 API LEVEL >= 8
項目地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh
Demo地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh/blob/master/ptr-demo/target/ultra-ptr-demo.apk?raw=true
2、pinned-section-listview
GroupName滑動到頂端時會固定不動直到另外一個GroupName到達頂端的ExpandListView
項目地址:https://github.com/beworker/pinned-section-listview
3、ListBuddies
自動滾動的雙列ListView ,兩個ListView滾動速度不一致,有視差效果
項目地址:https://github.com/jpardogo/ListBuddies
Demo地址:https://play.google.com/store/apps/details?id=com.jpardogo.android.listbuddies
二、Menu
1、MenuDrawer
滑出式菜單,通過拖動屏幕邊緣滑出菜單,支持屏幕上下左右劃出,支持當前View處於上下層,支持Windows邊緣、ListView邊緣、ViewPager變化劃出菜單等。
項目地址:https://github.com/SimonVT/android-menudrawer
Demo地址:http://simonvt.github.io/android-menudrawer/
APP示例:Gmail、Google Music等大部分google app
2、SlidingMenu
滑出式菜單,通過拖動屏幕邊緣滑出菜單,支持屏幕左右劃出,支持菜單zoom、scale、slide up三種動畫樣式出現。與MenuDrawer相比而言,SlidingMenu支持菜單動畫樣式出現,MenuDrawer支持菜單view處於內容的上下層
項目地址:https://github.com/jfeinstein10/SlidingMenu
Demo地址:https://play.google.com/store/apps/details?id=com.slidingmenu.example
3、CircularFloatingActionMenu
一個可定製的圓形的浮動菜單控件,類似於Path的圓形菜單。這個控件的可定製性更強,可以很容易的定製菜單出現消失時的動畫,起始角度和半徑。
項目地址:https://github.com/oguzbilgener/CircularFloatingActionMenu
Demo地址:https://github.com/oguzbilgener/CircularFloatingActionMenu/tree/master/samples
4、 NavigationDrawerSI
Navigation Drawer的一個簡單實現,滑動並以摺疊方式打開菜單
項目地址:https://github.com/mmBs/NavigationDrawerSI
Demo地址:https://play.google.com/store/apps/details?id=mmbialas.pl.navigationdrawersi
5、 DragLayout
使用support.v4包下的ViewDragHelper實現QQ5.0側滑
項目地址:https://github.com/BlueMor/DragLayout
動畫效果顯示
三、ImageView
1、RoundedImageView
帶圓角的ImageView
2、 CircleImageView
圓形的ImageView
項目地址:https://github.com/hdodenhof/CircleImageView
四、ProgressBar
1、HoloCircularProgressBar
Android4.1 時鐘App樣式
項目地址:https://github.com/passsy/android-HoloCircularProgressBar
2、HoloCircularProgressBar
Android4.1 時鐘App樣式
項目地址:https://github.com/passsy/android-HoloCircularProgressBar
五、Buttons
1、FancyButtons
一個不用圖片就可以幫助我們創建出漂亮按鈕的庫。
項目地址:https://github.com/medyo/fancybuttons
Demo地址:https://github.com/medyo/fancybuttons/tree/master/samples
六、GraphView
1、MPAndroidChart
強大的圖表繪製工具,支持折線圖、面積圖、散點圖、時間圖、柱狀圖、條圖、餅圖、氣泡圖、圓環圖、範圍(高至低)條形圖、網狀圖及各種圖的結合;支持圖的拖拽縮放;支持 Android 2.2 以上,支持橫縱軸縮放,多指縮放,展現動畫、高亮、保存到 sdcard、從文件讀取圖表
項目地址:https://github.com/PhilJay/MPAndroidChart
Demo地址:https://play.google.com/store/apps/details?id=com.xxmassdeveloper.mpchartexample
Demo項目:https://github.com/PhilJay/MPAndroidChart/tree/master/MPChartExample
2、 GraphView
繪製圖表和曲線圖的View,可用於Android上的曲形圖、柱狀圖、波浪圖展示
項目地址:https://github.com/jjoe64/GraphView
Demo項目:https://github.com/jjoe64/GraphView-Demos
APP示例:Wordpress Android,Google Analytics
3、HoloGraphLibrary
繪製現狀圖、柱狀圖、餅狀圖
項目地址:https://bitbucket.org/danielnadeau/holographlibrary/src
文檔介紹:https://bitbucket.org/danielnadeau/holographlibrary/wiki/Home