Android 那些常用的自定义控件汇总

  最近准备梳理一下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

发布了34 篇原创文章 · 获赞 37 · 访问量 30万+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章