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

android 专栏收录该内容
6 篇文章 0 订阅

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

  • 2
    点赞
  • 0
    评论
  • 1
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

这是一个集成目前Android主流优秀第三方组件、优秀好用的自定义控件、实用工具类封装、 以及一些APP共通模块(比如:版本更新、意见反馈、引导界面等等)的开发包,帮助程序员 快速开发自己的APP 已集成第三方开源组件: 网络请求库android-async-http 图片异步加载库universal-image-loader Sqlite数据库操作ormlite-android 社会化分享ShareSDK+短信验证码 Zxing二维码库 百度地图定位SDK 谷歌依赖注入库RoboGuice WebService调用库ksoap2 XML解析XStream 动画开源库nineoldandroids 表单验证库android-validation-komensky 更多优秀开源库等待集成... 已封装工具类: HTTP网络通信工具类(ToolHTTP.java),get/post请求,支持多种接口回调 SOAP协议通信工具类(ToolSOAP.java),基于异步回调请求WebService接口 Sqlite数据库操作工具类(ToolDatabase.java),获取DAO、创建表、删除表等API 提示信息对话框工具类(ToolAlert.java),已集成泡泡、土司、对话框三种提示 文件操作工具类(ToolFile.java),assets/raw/xml/shrePerface/等文件读写API 地图定位工具类(ToolLocation.java),读取GPS状态、请求定位、获取经纬度等方法 社会化分享工具类(ToolShareSDK.java),各大开发平台分享API操作 短信验证码工具类(ToolMSM.java),移动/联通/电信三网发送手机短信验证码、异步回调验 证结果 字符串操作工具类(ToolString.java),生成UUID、非空非NULL逻辑判断、生成MD5等常用共 通方法 数据操作工具类(ToolData.java),自动递归获取表单数据封装成Map、本地数据分页共通方 法等 图片操作工具类(ToolPicture.java),生成二维码、验证码、灰度、合成、圆角、水印等操 作 读取本地资源工具类(ToolResource.java),反射本地资源文件API,避免依赖R文件,方便 jar形式发布 Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体颜色、大小、边框等 Properties操作工具类(ToolProperties.java),读写Properties文件操作 网络操作工具类(ToolNetwork.java),获取网络信息、更改切换网络等相关操作 日期操作工具类(ToolDateTime.java),获取日期、日期加减、格式化日期、日期转换等操作 XML操作工具类(ToolXml.java),基于DOM/XMLPullPaser模式解析、生成XML操作 XMPP操作工具类(ToolXMPP.java),基于XMPP协议的相关API操作 适配字体工具类(ToolAutoFit.java),代码根据设备密度自动缩放View的字体大小 LOG相关工具类(ToolLog.java) 功能待续-->切入记录异常日志,并存储文件或上传至服务 器 已封装/收集自定义控件: 兼容低版本的SwitchButton 追加自定义属性Value的CheckBox/RadioButton/RadioGroup/SingleSpinner 圆角提示信息TipsView 圆角图片RoundImageView 自定义样式风格ProgressDialog 自定义样式WebView 圆形进度条(RoundProgressBar)、垂直进度条(VerticalProgressBar) 开源优秀自定义控件:imageindicator(图片轮播/引导界面)、pulltorefresh、XListView 、TableFixHeaders(水平+垂直滚动+首行+首列冻结表格)、ViewPager
©️2021 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。

余额充值