您的位置:首页 > 移动开发 > Android开发

Android 开源项目分类汇总(上)

2016-05-10 17:36 525 查看


目前包括:

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 等大牛


第一部分
个性化控件(View)

主要介绍那些不错个性化的 View,包括 ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar、TextView、ScrollView、TimeView、TipView、FlipView、ColorPickView、GraphView、UI Style 等等。


一、ListView

android-pulltorefresh

一个强大的拉动刷新开源项目,支持各种控件下拉刷新,ListView、ViewPager、WebView、ExpandableListView、GridView、ScrollView、Horizontal ScrollView、Fragment 上下左右拉动刷新,比下面 johannilsson 那个只支持 ListView 的强大的多。并且它实现的下拉刷新 ListView 在 item 不足一屏情况下也不会显示刷新提示,体验更好。

项目地址:https://github.com/chrisbanes/Android-PullToRefresh

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true

APP 示例:新浪微博各个页面

android-pulltorefresh-listview

下拉刷新 ListView,这个被很多人使用的项目实际有不少 bug,推荐使用 android-Ultra-Pull-to-Refresh

项目地址:https://github.com/johannilsson/android-pulltorefresh

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-demo.apk?raw=true

android-Ultra-Pull-to-Refresh

下拉刷新,第一个项目已经停止维护了,并且使用起来相对复杂,定制性也差。这个是替代和改良方案。这个继承于 ViewGroup 可以包含任何 View。功能甚至比 SwipeRefreshLayout 强大。使用起来非常简单。良好的设计,如果你想定制自己的 UI 样式,非常简单,就像给 ListView 加一个 Header View 那么简单。支持 API LEVEL >= 8

项目地址:https://github.com/liaohuqiu/android-Ultra-Pull-To-Refresh

原理剖析文档:android-Ultra-Pull-to-Refresh

Demo 地址:https://raw.githubusercontent.com/liaohuqiu/android-Ultra-Pull-To-Refresh/master/ptr-demo.apk

效果图:



http://srain-github.qiniudn.com/ultra-ptr/release-to-refresh.gif

http://srain-github.qiniudn.com/ultra-ptr/auto-refresh.gif

http://srain-github.qiniudn.com/ultra-ptr/store-house-string-array.gif

Android-PullToRefreshRecyclerView

支持下拉刷新的RecyclerView,同时支持滑动到底部自动加载数据、给RecyclerView添加Header。并且不更改原有RecyclerView的逻辑。





项目地址:https://github.com/HomHomLin/Android-PullToRefreshRecyclerView。

Demo地址:https://github.com/HomHomLin/Android-PullToRefreshRecyclerView/blob/master/sample.apk

DragSortListView

拖动排序的 ListView,同时支持 ListView 滑动 item 删除,各个 Item 高度不一、单选、复选、CursorAdapter 做为适配器、拖动背景变化等

项目地址:https://github.com/bauerca/drag-sort-listview

Demo 地址:https://play.google.com/store/apps/details?id=com.mobeta.android.demodslv

APP 示例:Wordpress Android

SwipeListView

支持定义 ListView 左右滑动事件,支持左右滑动位移,支持定义动画时间

项目地址:https://github.com/47deg/android-swipelistview

Demo 地址:https://play.google.com/store/apps/details?id=com.fortysevendeg.android.swipelistview

APP 示例:微信

SlideAndDragListView

支持ListView的Item的拖动排序、左右滑动事件,可自定义左右滑动显示文字、图标、位移,同时支持onItemClick、onItemLongClick等监听器,提供丰富的回调接口。

项目地址:https://github.com/yydcdut/SlideAndDragListView

Demo 地址:https://github.com/yydcdut/SlideAndDragListView/blob/master/apk/sdlv.apk?raw=true

APP 示例:Android 手机QQ 5.0

效果图:



Android-SwipeToDismiss

滑动 Item 消失 ListView,支持 3.0 以下版本见:https://github.com/JakeWharton/SwipeToDismissNOA

项目地址:https://github.com/romannurik/Android-SwipeToDismiss

Demo 地址:https://github.com/JakeWharton/SwipeToDismissNOA/SwipeToDismissNOA.apk/qr_code

RecyclerViewSwipeDismiss

轻量级支持 support-v7 中的 RecyclerView 的滑动删除(Swipe to dismiss)行为,不需要修改源代码,只要简单的绑定onTouchListener

项目地址:https://github.com/CodeFalling/RecyclerViewSwipeDismiss

效果图:



QuickSideBar

帮助快速查阅对应分组的侧边栏,可以配合任意列表,demo中给出配合RecyclerView(浮动分组使用stickyheadersrecyclerview)。

项目地址:https://github.com/saiwu-bigkoo/Android-QuickSideBar

效果图:



PinnedHeaderExpandableListView

首先它是一个 ExpandableListView,但是它的头部可以固定,其次,在它的上面还有一个头部可以来回伸缩

项目地址:https://github.com/singwhatiwanna/PinnedHeaderExpandableListView

效果图:



APP 示例:百度手机卫士垃圾清理界面

StickyListHeaders

GroupName 滑动到顶端时会固定不动直到另外一个 GroupName 到达顶端的 ExpandListView,支持快速滑动,支持 Android2.3 及以上

项目地址:https://github.com/emilsjolander/StickyListHeaders

效果图:



APP 示例:Android 4.0 联系人

pinned-section-listview

GroupName 滑动到顶端时会固定不动直到另外一个 GroupName 到达顶端的 ExpandListView

项目地址:https://github.com/beworker/pinned-section-listview

效果图:



PinnedHeaderListView

GroupName 滑动到顶端时会固定不动直到另外一个 GroupName 到达顶端的 ExpandListView

项目地址:https://github.com/JimiSmith/PinnedHeaderListView

QuickReturn

ListView/ScrollView 的 header 或 footer,当向下滚动时消失,向上滚动时出现

项目地址:https://github.com/lawloretienne/QuickReturn

Demo 地址:https://play.google.com/store/apps/details?id=com.etiennelawlor.quickreturn

QuickReturnHeader

ListView/ScrollView 的 header 或 footer,当向下滚动时消失,向上滚动时出现

项目地址:https://github.com/ManuelPeinado/QuickReturnHeader

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/quick-return-header-demo.apk?raw=true

APP 示例:google plus

IndexableListView

ListView 右侧会显示 item 首字母快捷索引,点击可快速滑动到某个 item

项目地址:https://github.com/woozzu/IndexableListView

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/indexable-listview.apk?raw=true

APP 示例:微信通讯录、小米联系人

CustomFastScrollView

ListView 快速滑动,同时屏幕中间 PopupWindows 显示滑动到的 item 内容或首字母

项目地址:https://github.com/nolanlawson/CustomFastScrollViewDemo

效果图:



Android-ScrollBarPanel

ListView 滑动时固定的 Panel 指示显示在 scrollbar 旁边

项目地址:https://github.com/rno/Android-ScrollBarPanel

效果图:



SlideExpandableListView

用户点击 listView item 滑出固定区域,其他 item 的区域收缩

项目地址:https://github.com/tjerkw/Android-SlideExpandableListView

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/slide-expandable-listView-demo.apk?raw=true

JazzyListView

ListView 及 GridView item 以特殊动画效果进入屏幕,效果包括 grow、cards、curl、wave、flip、fly 等等

项目地址:https://github.com/twotoasters/JazzyListView

Demo 地址:https://play.google.com/store/apps/details?id=com.twotoasters.jazzylistview.sample

在线演示:http://lab.hakim.se/scroll-effects/

ListViewAnimations

带 Item 显示动画的 ListView,动画包括底部飞入、其他方向斜飞入、下层飞入、渐变消失、滑动删除等

项目地址:https://github.com/nhaarman/ListViewAnimations

Demo 地址:https://play.google.com/store/apps/details?id=com.haarman.listviewanimations

APP 示例:Google plus、Google Now 卡片式进入、小米系统中应用商店、联系人、游戏中心、音乐、文件管理器的 ListView、Ultimate、Light Flow Lite、TreinVerkeer、Running Coach、Pearl Jam Lyrics、Calorie Chart、Car Hire、Super BART、DK FlashCards、Counter Plus、Voorlees Verhaaltjes 2.0

DevsmartLib-Android

横向 ListView

项目地址:https://github.com/dinocore1/DevsmartLib-Android

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/horizontal-listview-demo.apk?raw=true

TwoWayView

横向 ListView 的效果,继承自 AdapterView

项目地址:https://github.com/lucasr/twoway-view

HorizontalVariableListView

支持 Item 宽度不一致的 ListView

项目地址:https://github.com/sephiroth74/HorizontalVariableListView

LinearListView

用 LinearLayout 实现的 ListView,可解决多个 ListView 并存等问题。目前自己也有需要,等亲自尝试过后会再具体介绍

项目地址:https://github.com/frankiesardo/LinearListView

MultiChoiceAdapter

支持多选的 ListView Adapter

项目地址:https://github.com/ManuelPeinado/MultiChoiceAdapter

Demo 地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.multichoiceadapter.demo

EnhancedListView

支持横向滑动删除列表项以及撤销删除的 ListView,该项目的前身是SwipeToDismissUndoList

项目地址:https://github.com/timroes/EnhancedListView

Demo 地址:https://play.google.com/store/apps/details?id=de.timroes.android.listviewdemo&rdid=de.timroes.android.listviewdemo

ListBuddies

自动滚动的双列 ListView ,两个 ListView 滚动速度不一致,有视差效果

项目地址:https://github.com/jpardogo/ListBuddies

Demo 地址:https://play.google.com/store/apps/details?id=com.jpardogo.android.listbuddies

效果图:



SwipeMenuListView

针对 ListView item 的侧滑菜单

项目地址:https://github.com/baoyongzhang/SwipeMenuListView

效果图:



APP 示例:手机 QQV5.0

PagingListView

分页加载的 ListView。当滑动到 ListView 底部最后一个元素时,显示一个进度行,然后加载下一页数据,并显示。

项目地址:https://github.com/nicolasjafelle/PagingListView

PullZoomView

支持下拉时 HeaderView 缩放的 ListView、ScrollView

项目地址:https://github.com/Frank-Zhu/PullZoomView

效果图:



PullToZoomInListView

滑动 ListView 时使其 HeaderView 跟随滑动缩放

项目地址:https://github.com/matrixxun/PullToZoomInListView

效果图:



CalendarListview

实现每个月一行日历效果的 ListView

项目地址:https://github.com/traex/CalendarListview

原理剖析文档:CalendarListview

效果图:



sticky-headers-recyclerview

GroupName 滑动到顶端时会固定不动直到另外一个 GroupName 到达顶端的 ListView,采用 support-v7 中的 RecyclerView 实现

项目地址:https://github.com/timehop/sticky-headers-recyclerview

PullSeparateListView

到达顶部或底部继续拉动时,实现 Item 间的相互分离,两种模式:(1) 全部分离的模式,即屏幕内所有 Item 都会分离 (2)部分分离模式,以点击位置为分界点,部分 item 分离

项目地址:https://github.com/chiemy/PullSeparateListView

效果图:



ExpandableLayout

Header 和 Content Item 都可以展开的 ExpandableListview

项目地址:https://github.com/traex/ExpandableLayout

PagedHeadListView

支持 paginated header 以及 material page indicator 的 ListView.

项目地址:https://github.com/JorgeCastilloPrz/PagedHeadListView

效果图:



CustomSwipeListView

支持左滑弹出自定义菜单,右滑删除且允许撤销,同时可以自定义滑动动画时间和滑动触发事件的时机等。

项目地址:https://github.com/xyczero/Android-CustomSwipeListView

Demo 地址:Download
here

效果图:



Pull-to-Refresh.Rentals-Android

提供一个简单可以自定义的下拉刷新实现,Yalantis 出品。

项目地址:https://github.com/Yalantis/Pull-to-Refresh.Rentals-Android

效果图:



ScrollerCalendar

实现每行显示一年的 12 个月份的 RecyclerView 年历

项目地址:https://github.com/guanchao/ScrollerCalendar

效果图:



ExtractWordView

一个可以提取单词的 ListView,支持"放大镜"效果。

项目地址:https://github.com/jcodeing/ExtractWordView

Demo 地址:Download
here

效果图:



FlyRefresh

支持 ListView, GridView, RecyclerView, ScrollView 的下拉刷新

项目地址:https://github.com/race604/FlyRefresh

效果图:



MVCHelper

实现下拉刷新,滚动底部自动加载更多,分页加载,自动切换显示网络失败布局,暂无数据布局,支持任意 view,真正的 MVC 架构

支持切换主流下拉刷新框架 Android-PullToRefresh-Library,android-Ultra-Pull-To-Refresh-library,SwipeRefreshLayout

项目地址:https://github.com/LuckyJayce/MVCHelper

Demo 地址:https://github.com/LuckyJayce/MVCHelper/blob/master/raw/MVCHelper_Demo.apk?raw=true

RecyclerViewSwipeDismiss

支持滑动 Item 操作、点击展开、拖动排序、展开后拖动排序等特性的 RecyclerView

项目地址:https://play.google.com/store/apps/details?id=com.h6ah4i.android.example.advrecyclerview

视频:http://www.youtube.com/watch?feature=player_embedded&v=S7cSwMArjUQ

WaterDropListView

模仿 iOS 下拉刷新“水滴”效果,支持下拉刷新和上拉加载

项目地址:https://github.com/THEONE10211024/WaterDropListView

效果图:



PopupListView

實現ListItem 點擊後置頂並可顯示客製化添加的item的內部View 的ListView

项目地址:https://github.com/s8871404/PopupListView

Demo 地址:https://play.google.com/store/apps/details?id=com.baobomb.popuplistview_sample

效果图:



CircleRefreshLayout

一个包含有趣的动画的自定义下拉刷新布局

项目地址:https://github.com/tuesda/CircleRefreshLayout

效果图:





EasyRecyclerView

一款简单易用的EasyRecyclerView 1.提供EasyRecyclerView,不需要写太多RecyclerView的配置代码

2.提供好一个可以适配单布局和多布局的RecyclerViewAdapter

3.提供了分割线的实现类,只需要传入一个DrawableId

项目地址:https://github.com/CaMnter/EasyRecyclerView

CanRefresh 可适配所有视图的下拉刷新上拉加载,并支持各种风格

项目地址:https://github.com/canyinghao/CanRefresh

效果图:






二、ActionBar

ActionBarSherlock

为 Android 所有版本提供统一的 ActionBar,解决 4.0 以下 ActionBar 的适配问题

项目地址:https://github.com/JakeWharton/ActionBarSherlock

Demo 地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos

标签:兼容库, ActionBar

ActionBar-PullToRefresh

下拉刷新,ActionBar 出现加载中提示

项目地址:https://github.com/chrisbanes/ActionBar-PullToRefresh

Demo 地址:https://play.google.com/store/apps/details?id=uk.co.senab.actionbarpulltorefresh.samples.stock

APP 示例:Gmail,Google Plus,知乎等

FadingActionBar

ListView 向下滚动逐渐显现的 ActionBar

项目地址:https://github.com/ManuelPeinado/FadingActionBar

Demo 地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.fadingactionbar.demo

APP 示例:google music,知乎

NotBoringActionBar

google music 下拉收缩的 ActionBar

项目地址:https://github.com/flavienlaurent/NotBoringActionBar

Demo 地址:http://flavienlaurent.com/blog/2013/11/20/making-your-action-bar-not-boring/

APP 示例:Google 音乐

RefreshActionItem

带进度显示和刷新按钮的 ActionBar

项目地址:https://github.com/ManuelPeinado/RefreshActionItem

Demo 地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.refreshactionitem.demo

APP 示例:The New York Times,DevAppsDirect

GlassActionBar

类似玻璃的有一定透明度的 ActionBar

项目地址:https://github.com/ManuelPeinado/GlassActionBar

Demo 地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.glassactionbardemo

APP 示例:google music


三、Menu

MenuDrawer

滑出式菜单,通过拖动屏幕边缘滑出菜单,支持屏幕上下左右划出,支持当前 View 处于上下层,支持 Windows 边缘、ListView 边缘、ViewPager 变化划出菜单等。

项目地址:https://github.com/SimonVT/android-menudrawer

Demo 地址:http://simonvt.github.io/android-menudrawer/

APP 示例:Gmail、Google Music 等大部分 google app

SlidingMenu

滑出式菜单,通过拖动屏幕边缘滑出菜单,支持屏幕左右划出,支持菜单 zoom、scale、slide up 三种动画样式出现。与 MenuDrawer 相比而言,SlidingMenu 支持菜单动画样式出现,MenuDrawer 支持菜单 view 处于内容的上下层

项目地址:https://github.com/jfeinstein10/SlidingMenu

原理剖析文档:SlidingMenu

Demo 地址:https://play.google.com/store/apps/details?id=com.slidingmenu.example

APP 示例:Foursquare, LinkedIn, Zappos, Rdio, Evernote Food, Plume, VLC for Android, ESPN ScoreCenter, MLS MatchDay, 9GAG, Wunderlist 2, The Verge, MTG Familiar, Mantano Reader, Falcon Pro (BETA), MW3 Barracks

ArcMenu

支持类似 Path 的左下角动画旋转菜单及横向划出菜单、圆心弹出菜单

项目地址:https://github.com/daCapricorn/ArcMenu

效果图:



https://dl.dropboxusercontent.com/u/11369687/preview1.png

https://dl.dropboxusercontent.com/u/11369687/raymenu.png

APP 示例:Path

android-satellite-menu

类似 Path 的左下角动画旋转菜单

项目地址:https://github.com/siyamed/android-satellite-menu

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/satellite-menu-demo.apk?raw=true

APP 示例:Path

radial-menu-widget

圆形菜单,支持二级菜单

项目地址:https://code.google.com/p/radial-menu-widget/

效果图:



Android Wheel Menu

圆形旋转选取菜单

项目地址:https://github.com/anupcowkur/Android-Wheel-Menu

效果图:



FoldingNavigationDrawer

滑动并以折叠方式打开菜单

项目地址:https://github.com/tibi1712/FoldingNavigationDrawer-Android

Demo 地址:https://play.google.com/store/apps/details?id=com.ptr.folding.sample

效果图:



AndroidResideMenu

仿 Dribbble 的边栏菜单

项目地址:https://github.com/SpecialCyCi/AndroidResideMenu

效果图:



CircularFloatingActionMenu

一个可定制的圆形的浮动菜单控件,类似于 Path 的圆形菜单。这个控件的可定制性更强,可以很容易的定制菜单出现消失时的动画,起始角度和半径。

项目地址:https://github.com/oguzbilgener/CircularFloatingActionMenu

原理剖析文档:CircularFloatingActionMenu

Demo 地址:https://github.com/oguzbilgener/CircularFloatingActionMenu/tree/master/samples

效果图:



NavigationDrawerSI

Navigation Drawer 的一个简单实现,滑动并以折叠方式打开菜单

项目地址:https://github.com/mmBs/NavigationDrawerSI

Demo 地址:https://play.google.com/store/apps/details?id=mmbialas.pl.navigationdrawersi

效果图:



APP 示例:https://play.google.com/store/apps/details?id=mmbialas.pl.navigationdrawersi

DragLayout

使用 support.v4 包下的 ViewDragHelper 实现 QQ5.0 侧滑

项目地址:https://github.com/BlueMor/DragLayout

效果图:



LDrawer

Material Design 形式的展开折叠 Icon

项目地址:https://github.com/ikimuhendis/LDrawer

效果图:



Floating Action Button

悬浮的圆形菜单栏,支持组建滚动时自动隐藏及其他设置

项目地址:https://github.com/shamanland/floating-action-button

效果图:



Side-Menu.Android

分类侧滑菜单,Yalantis 出品。

项目地址:https://github.com/Yalantis/Side-Menu.Android

原理剖析文档:Side-Menu.Android

效果图:



Context-Menu.Android

可以方便快速集成漂亮带有动画效果的上下文菜单,Yalantis出品。

项目地址:https://github.com/Yalantis/Context-Menu.Android

效果图:



Droppy

支持多种样式的下拉菜单

项目地址:https://github.com/shehabic/Droppy

MaterialDrawer

Material Design 风格的导航抽屉,提供简便且强大的定制功能

项目地址:https://github.com/mikepenz/MaterialDrawer

Demo 地址:https://play.google.com/store/apps/details?id=com.mikepenz.materialdrawer.app

效果图:



SlideBottomPanel

底部划出菜单,滑动时背景图透明度渐变,支持嵌套 LiewView 或 ScrollView

项目地址:https://github.com/kingideayou/SlideBottomPanel

Demo 地址:SlideBottomPanelDemo
下载

效果图:



FlowingDrawer

带手势流动效果侧滑菜单 项目地址:https://github.com/mxn21/FlowingDrawer 效果图:




四、ViewPager
、Gallery

AdvancedPagerSlidingTabStrip

一个完美兼容ViewPager的导航栏组件;可以自定义TabView;能动态加载Tab上的Icon图片; 能显示Tab的消息数量和提示小圆点;支持自定义为微博形式的可滑动tab。





项目地址:https://github.com/HomHomLin/AdvancedPagerSlidingTabStrip。

ConvenientBanner

通用的广告栏控件,让你轻松实现广告头效果。支持无限循环,可以设置自动翻页和时间(而且非常智能,手指触碰则暂停翻页,离开自动开始翻页。你也可以设置在界面onPause的时候不进行自动翻页,onResume之后继续自动翻页),并且提供多种翻页特效。 对比其他广告栏控件,大多都需要对源码进行改动才能加载网络图片,或者帮你集成不是你所需要的图片缓存库。而这个库能让有代码洁癖的你欢喜,不需要对库源码进行修改你就可以使用任何你喜欢的网络图片库进行配合。 项目地址:https://github.com/saiwu-bigkoo/Android-ConvenientBanner

效果图:



Android-ViewPagerIndicator

配合 ViewPager 使用的 Indicator,支持各种位置和样式

项目地址:https://github.com/JakeWharton/Android-ViewPagerIndicator

Demo 地址:https://play.google.com/store/apps/details?id=com.viewpagerindicator.sample

APP 示例:太多了。。

JazzyViewPager

支持 Fragment 切换动画的 ViewPager,动画包括转盘、淡入淡出、翻页、层叠、旋转、方块、翻转、放大缩小等,效果类似桌面左右切换的各种效果,不过桌面并非用 ViewPager 实现而已

项目地址:https://github.com/jfeinstein10/JazzyViewPager

Demo 地址:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true

JellyViewPager

特殊切换动画的 ViewPager

项目地址:https://github.com/chiemy/JellyViewPager

效果图:



Android-DirectionalViewPager

支持横向和纵向(垂直)的 ViewPager

项目地址:https://github.com/JakeWharton/Android-DirectionalViewPager

Demo 地址:https://market.android.com/details?id=com.directionalviewpager.sample

FancyCoverFlow

支持 Item 切换动画效果的类似 Gallery View

项目地址:https://github.com/davidschreiber/FancyCoverFlow

Demo 地址:https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples

效果图:



AndroidTouchGallery

支持双击或双指缩放的 Gallery(用 ViewPager 实现),相比下面的 PhotoView,在被放大后依然能滑到下一个 item,并且支持直接从 url 和文件中获取图片,

项目地址:https://github.com/Dreddik/AndroidTouchGallery

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/touch-gallery-demo.apk?raw=true

APP 示例:类似微信中查看聊天记录图片时可双击放大,并且放大情况下能正常左右滑动到前后图片

Android Auto Scroll ViewPager

Android 自动滚动 轮播循环的 ViewPager

项目地址:https://github.com/Trinea/android-auto-scroll-view-pager

Demo 地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo

文档介绍:http://www.trinea.cn/android/auto-scroll-view-pager/

Android PagerSlidingTabStrip

配合 ViewPager 使用的 Indicator,支持 ViewPager Scroll 时 Indicator 联动

项目地址:https://github.com/astuetz/PagerSlidingTabStrip

原理剖析文档:Android
PagerSlidingTabStrip

Demo 地址:https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample

ViewPager3D

ViewPager3D 效果

项目地址:https://github.com/inovex/ViewPager3D

AnimaTabsview

仿网易云音乐标签切换的动画,带透明小三角

项目地址:https://github.com/wuyexiong/transparent-over-animtabsview

在线演示:http://v.youku.com/v_show/id_XNzA4MjY5NjA0.html

LoopingViewPager

无限循环的 ViewPager

项目地址:https://github.com/imbryk/LoopingViewPager

android_page_curl

翻书卷曲效果

项目地址:https://github.com/harism/android_page_curl

在线演示:https://www.youtube.com/watch?v=iwu7P5PCpsw

APP 示例:iReader

ViewPagerIndicator

简化并实现 android 的 TabHost 效果,顶部滑动 tab,引导页,支持自定义 tab 样式,自定义滑动块样式和位置,自定义切换 tab 的过渡动画,子界面的预加载和界面缓存,设置界面是否可滑动

项目地址:https://github.com/LuckyJayce/ViewPagerIndicator

ScreenSlideIndicator

轻量级的圆形 Indicadtor,位置可以自由调整,不会对 ViewPager 产生任何影响。

项目地址:ScreenSlidePager

效果图:



SmartTabLayout

自定义的 Tab title strip,基于 Google Samples 中的 android-SlidingTabBasic 项目,滑动时 Indicator 可平滑过渡。

项目地址:https://github.com/ogaclejapan/SmartTabLayout

Demo 地址:https://play.google.com/store/apps/details?id=com.ogaclejapan.smarttablayout.demo

效果图:



AndroidImageSlider

Android 图片滑动

项目地址:https://github.com/daimajia/AndroidImageSlider

效果图:



App

示例:https://github.com/daimajia/AndroidImageSlider/releases/download/v1.0.8/demo-1.0.8.apk

RecyclerViewPager

完全继承自 RecyclerView,可以自定义触发翻页的距离,可自定义翻页速度,支持垂直方向的 ViewPager,支持 Fragment。

项目地址:RecyclerViewPager

效果图:



CircleIndicator

轻量级ViewPager指示器,支持三种不同的模式

项目地址:CircleIndicator

效果图:











EasySlidingTabs

一款简单、易用的滑动标签页

项目地址: https://github.com/CaMnter/EasySlidingTabs

效果图:






五、GridView

StaggeredGridView

允许非对齐行的 GridView,类似 Pinterest 的瀑布流,并且跟 ListView 一样自带 View 缓存,继承自 ViewGroup

项目地址:https://github.com/maurycyw/StaggeredGridView

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/staggered-gridview-demo.apk?raw=true

APP 示例:Pinterest 等

AndroidStaggeredGrid

允许非对齐行的 GridView,类似 Pinterest 的瀑布流,继承自 AbsListView

项目地址:https://github.com/etsy/AndroidStaggeredGrid

APP 示例:Pinterest 等

PinterestLikeAdapterView

允许非对齐行的 GridView,类似 Pinterest 的瀑布流,允许下拉刷新

项目地址:https://github.com/GDG-Korea/PinterestLikeAdapterView

APP 示例:Pinterest 等

DraggableGridView

Item 可拖动交换位置的 GridView,实际是自己继承 ViewGroup 实现,类似桌面的单屏效果,可屏幕自动上下滚动进行 Item 移动交换,多屏效果见下面 PagedDragDropGrid

项目地址:https://github.com/thquinn/DraggableGridView

Demo 地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true

也可自定义item的宽高和每行的个数,同时修改了交换逻辑,当移动到另一个item时就进行交换,并删除滚动逻辑。

项目地址:DraggableGridView

效果图:





StickyGridHeaders

GroupName 滑动到顶端时会固定不动直到另外一个 GroupName 到达顶端的 GridView

项目地址:https://github.com/TonicArtos/StickyGridHeaders

效果图:



PagedDragDropGrid

Item 可拖动交换位置、拖动删除的自定义控件,实际是自己继承 ViewGroup 实现,类似桌面的多屏效果,可拖动到屏幕边缘,屏幕自动左右滚动进行 Item 移动交换,可拖动进行删除,单屏效果见上面 DraggableGridView

项目地址:https://github.com/mrKlar/PagedDragDropGrid

在线演示:http://youtu.be/FYTSRfthSuQ

Android-DraggableGridViewPager

Item 可拖动交换位置的 GridView,实际是自己继承 ViewGroup 实现,类似桌面的多屏效果,可屏幕自动左右滚动进行 Item 移动交换,单屏效果见上面 DraggableGridView

项目地址:https://github.com/zzhouj/Android-DraggableGridViewPager

Demo 地址:https://github.com/Trinea/trinea-download/blob/master/draggable-grid-viewpager-demo.apk?raw=true

TwoWayGridView

可横向滚动的 GridView

项目地址:https://github.com/jess-anders/two-way-gridview

PagingGridView

分页加载的 GridView。当滑动到 GridView 底部最后一个行时,显示一个进度行,然后加载下一页数据,并显示。

项目地址:https://github.com/nicolasjafelle/PagingGridView

AsymmetricGridView

一个支持跨行和跨列可变 Item 大小的 GridView

项目地址:https://github.com/felipecsl/AsymmetricGridView

Demo 地址:https://play.google.com/store/apps/details?id=com.felipecsl.asymmetricgridview.app

效果图:



GridView with Header and Footer

和ListView一样带头部和底部的GridView,用法和ListView一样

项目地址:https://github.com/liaohuqiu/android-GridViewWithHeaderAndFooter

效果图:




六、ImageView

PhotoView

支持双击或双指缩放的 ImageView,在 ViewPager 等 Scrolling view 中正常使用,相比上面的 AndroidTouchGallery,不仅支持 ViewPager,同时支持单个 ImageView

项目地址:https://github.com/chrisbanes/PhotoView

原理剖析文档:PhotoView

Demo 地址:https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample

APP 示例:photup

Fresco-ImageView

Fresco-ImageView是一种Android平台的图像控件,底层是对Fresco的封装,可以异步加载网络图片、项目资源和本地图片,并且支持双指缩放、图片的基本处理以及Fresco的所有特性。

项目地址:https://github.com/HomHomLin/FrescoImageView。

android-gif-drawable

支持 gif 显示的 view,用 jni 实现的,编译生成 so 库后直接 xml 定义 view 即可,而且本身不依赖于其他开源项目所以相对下面的 ImageViewEx 简单的多

项目地址:https://github.com/koral--/android-gif-drawable

ImageViewEx

支持 Gif 显示的 ImageView,依赖很多,编译过程很繁琐

项目地址:https://github.com/frapontillo/ImageViewEx

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/imageviewex-demo.apk?raw=true

RoundedImageView

带圆角的 ImageView

项目地址:https://github.com/vinc3m1/RoundedImageView

效果图:



SelectableRoundedImageView

ImageView 允许四个角的每一个有不同的半径值。也允许椭圆形、圆形的形状或者边

项目地址:https://github.com/pungrue26/SelectableRoundedImageView

Demo 地址:https://play.google.com/store/apps/details?id=com.joooonho

效果图:



ColorArt

根据图片的均色设置背景色显示文字和图片,类似 itune11 中效果

项目地址:https://github.com/MichaelEvans/ColorArt

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/color-art-demo.apk?raw=true

CircleImageView

圆形的 ImageView

项目地址:https://github.com/hdodenhof/CircleImageView

效果图:



ImageViewZoom

支持放大和平移的 ImageView

项目地址:https://github.com/sephiroth74/ImageViewZoom

APP 示例:https://play.google.com/store/apps/details?id=com.aviary.android.feather

KenBurnsView

实现 Ken Burns effect 效果,达到身临其境效果的 ImageView

项目地址:https://github.com/flavioarfaria/KenBurnsView

CustomShapeImageView

各种形状的 ImageView, 相比上面的圆形 ImageView,多了更多形状

项目地址:https://github.com/MostafaGazar/CustomShapeImageView

效果图:



Shape Image View

可以自定义各种形状的 ImageView, 并且支持边框

项目地址:https://github.com/siyamed/android-shape-imageview

效果图:



https://github.com/siyamed/android-shape-imageview/raw/master/images/all-samples.png

TextDrawable

一个用于生成带有文本或者字母的图片的轻量级库。扩展自 Drawable,因此可用于现有/自定义/网络等 ImageView 类,并且包含一个流接口用于创建 drawables 以及一个定制的 ColorGenerator

项目地址:https://github.com/amulyakhare/TextDrawable

效果图:



android-smart-image-view

可从 URL 或 contact address book 加载图片的 ImageView,支持缓存

项目地址:https://github.com/loopj/android-smart-image-view

PhotoView

支持双指/双击缩放的ImageView,支持从一个PhotoView缩放到另外一个PhotoView(点击图片放大预览),相对于其他PhototView有更加平滑的缩放,平移的动画,并且支持所有的ScaleType,可以作为普通的ImageView使用

项目地址:https://github.com/bm-x/PhotoView

效果图:




七、ProgressBar

SmoothProgressBar

水平进度条

项目地址:https://github.com/castorflex/SmoothProgressBar

Demo 地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.smoothprogressbar.sample

MaterialProgessBar

Material Design 的进度条,支持 Android 4.0

项目地址:https://github.com/DreaminginCodeZH/MaterialProgressBar

Demo 地址:https://github.com/DreaminginCodeZH/MaterialProgressBar/blob/master/dist/sample.apk

ProgressWheel

支持进度显示的圆形 ProgressBar

项目地址:https://github.com/Todd-Davies/ProgressWheel

Demo 地址:https://github.com/Trinea/TrineaDownload/blob/master/progress-wheel-demo.apk?raw=true

android-square-progressbar

在图片周围显示进度

项目地址:https://github.com/mrwonderman/android-square-progressbar

Demo 地址:https://play.google.com/store/apps/details?id=net.yscs.android.square_progressbar_example

效果图:



APP 示例:square

HoloCircularProgressBar

Android4.1 时钟 App 样式

项目地址:https://github.com/passsy/android-HoloCircularProgressBar

效果图:



APP 示例:Android4.1 时钟 App

ProgressButton

通过图钉的不同状态显示进度

项目地址:https://github.com/f2prateek/progressbutton

文档介绍:http://f2prateek.com/progressbutton/

文档介绍:http://f2prateek.com/progressbutton/

效果图:



GoogleProgressBar

类似 google 多个圆形卡片翻转的 progressBar

项目地址:https://github.com/jpardogo/GoogleProgressBar

效果图:



TH-ProgressButton

带圆形进度显示的按钮

项目地址:https://github.com/torryharris/TH-ProgressButton

效果图:



https://raw.github.com/Vyshakh-K/TH-ProgressButton/master/screenshots/progressshot2.png

NumberProgressBar

带数字进度的进度条

项目地址:https://github.com/daimajia/NumberProgressBar

效果图:



CircularProgressDrawable

带圆形进度显示的进度条

项目地址:https://github.com/Sefford/CircularProgressDrawable

效果图:



Android-RoundCornerProgressBar

Android 圆角 ProgressBar,可自定义圆角颜色和半径,包括带 Icon 和不带 Icon 两种类型。

项目地址:https://github.com/akexorcist/Android-RoundCornerProgressBar

效果图:



circular-progress-button

带进度显示的 Button

项目地址:https://github.com/dmytrodanylyk/circular-progress-button

效果图:



WaveView

一个波纹效果的 View,可用来做 ProgressBar

项目地址:https://github.com/john990/WaveView

Demo 地址:https://raw.github.com/john990/WaveView/master/screenshot%26apk/demo.unaligned.apk

效果图:



MaterialLoadingProgressBar

抽取自 SwipeRefreshLayout 的 Material Design 进度指示器

项目地址:https://github.com/lsjwzh/MaterialLoadingProgressBar

效果图:



MetaballLoading

A 2d metaball loading 项目地址:https://github.com/dodola/MetaballLoading 效果图:

效果图:



SectorProgressView

一个圆形或环形的进度显示控件,用圆中扇形的角度大小来表示进度信息

项目地址:https://github.com/timqi/SectorProgressView

Demo:apk
download

效果图:







CircularFillableLoaders

一个可以用于闪屏或者其他地方加载的控件

项目地址:https://github.com/lopspower/CircularFillableLoaders

Demo地址:(https://play.google.com/store/apps/details?id=com.mikhaellopez.circularfillableloaderssample)

效果图:







PinWheel

一个旋转的大风车Dialog 项目地址:https://github.com/codingWang/PinWheel

效果图:



ColorArcProgressBar 一个可定制的圆形进度条,通过xml参数配置可实现QQ健康中步数的弧形进度显示、仪盘表显示速度、最常见的下载进度条等功能。

项目地址:https://github.com/Shinelw/ColorArcProgressBar

效果图:






八、TextView

包括 TextView 及所有继承自 TextView 控件,如 EditText、Button、RadioButton

android-flowtextview

文字自动环绕其他 View 的 Layout

项目地址:https://github.com/deano2390/FlowTextView

效果图:



Android Form EditText

验证输入合法性的编辑框,支持输入、英文、ip、url 等多种正则验证

项目地址:https://github.com/vekexasia/android-edittext-validator

Demo 地址:https://play.google.com/store/apps/details?id=com.andreabaccega.edittextformexample

Emojicon

支持 emojis 的 TextView 和 EditText

项目地址:https://github.com/rockerhieu/emojicon

文档介绍:http://rockerhieu.com/emojicon/

android-circlebutton

Android 圆形按钮,实际实现是继承自 ImageView

项目地址:https://github.com/markushi/android-circlebutton

Demo 地址:https://github.com/markushi/android-circlebutton/blob/master/example/example.apk

Segmented Radio Buttons for Android

iOS’s segmented controls 的实现

项目地址:https://github.com/vinc3m1/android-segmentedradiobutton

Demo 地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true

效果图:



Chips EditText Library

支持国家名字联想从而选择显示该国国旗的 EditText,实际就是通过 SpannableStringBuilder 实现

项目地址:https://github.com/kpbird/chips-edittext-library

Demo 地址:https://github.com/kpbird/chips-edittext-library/tree/master/ChipsEditTextDemo/bin

AutoFitTextView

可固定边界内容字体大小自适应的 TextView

项目地址:https://github.com/grantland/android-autofittextview

Shimmer for Android

文字发淡光的 TextView

项目地址:https://github.com/RomainPiel/Shimmer-android

Titanic

可以显示水位上升下降(不知道该怎么描述 囧)的 TextView

项目地址:https://github.com/RomainPiel/Titanic

效果图:



android-iconify

提供带 Icon 的 TextView,Menu,Button 等

项目地址:https://github.com/JoanZapata/android-iconify

Calligraphy

让我们在 android 开发中使用自定义字体变得更加简单

项目地址:https://github.com/chrisjenx/Calligraphy

效果图:



CreditsRoll

类似星球大战字幕效果的 TextView

项目地址:https://github.com/frakbot/CreditsRoll

android-process-buton

带加载或提交进度的 Button

项目地址:https://github.com/dmytrodanylyk/android-process-buton

FButton

扁平化的 Button

项目地址:https://github.com/hoang8f/android-flat-button

Demo 地址:https://play.google.com/store/apps/details?id=info.hoang8f.fbutton.demo

FloatingActionButton

一个类似 Android 版 Google+浮动功能按钮的控件,可以响应 ListView 的滚动事件。当列表向上滚动的时候会自动显示,向下滚动的时候自动隐藏。

项目地址:https://github.com/makovkastar/FloatingActionButton

Demo 地址:https://github.com/makovkastar/FloatingActionButton/tree/master/

效果图:



Android Saripaar

Android 表单验证

项目地址:https://github.com/ragunathjawahar/android-saripaar/

JumpingBeans

文字像 Mexican beans 一样跳动

项目地址:https://github.com/frakbot/JumpingBeans

Demo 地址:http://play.google.com/store/apps/details?id=net.frakbot.jumpingbeans.demo

效果图:



FancyButtons

一个不用图片就可以帮助我们创建出漂亮按钮的库。

项目地址:https://github.com/medyo/fancybuttons

Demo 地址:https://github.com/medyo/fancybuttons/tree/master/samples

效果图:



https://raw.githubusercontent.com/medyo/fancybuttons/master/screenshots/fancy2.png

Android-RobotoTextView

一个实现了所有 Roboto 字体的 TextView,包括新出的 Roboto Slab 字体。

项目地址:https://github.com/johnkil/Android-RobotoTextView

Demo 地址:http://play.google.com/store/apps/details?id=com.devspark.robototextview

Demo 项目:https://github.com/johnkil/Android-RobotoTextView/tree/master/robototextview-sample

效果图:



Android-WizardPager

一个表单向导库

项目地址:https://github.com/romannurik/android-wizardpager

Demo 项目:https://github.com/str4d/android-wizardpager/tree/textfield

效果图:



RippleView

一个实现了 Android L 上才引入的点击按钮后出现水波纹效果的按钮

项目地址:https://github.com/siriscac/RippleView

Demo 项目:https://github.com/siriscac/RippleView/tree/master/RippleViewExample

效果图:



RippleEffect

一个实现 Material Design Ripple 效果的库,支持 Android API 9+以上版本。

项目地址:https://github.com/traex/RippleEffect

Demo 项目:https://github.com/traex/RippleEffect/tree/master/sample

效果图:



RippleCompat 使用易于移植的方式为UI控件实现波纹效应,可以适配控件原背景及Palette支持。api简单,可自定义效果,兼容至Android API 7+。 项目地址:https://github.com/desmond1121/RippleCompat Demo
项目:https://github.com/desmond1121/RippleCompat/tree/master/app 效果图:



palette效果:



Android Floating Label Widgets

包含一系列控件,这些控件特点是:有默认值,当值不为空时默认值浮动到上面变为提示

项目地址:https://github.com/marvinlabs/android-floatinglabel-widgets

Demo 地址:https://play.google.com/store/apps/details?id=com.marvinlabs.widget.floatinglabel.demo

在线演示:http://www.youtube.com/watch?v=hpZD9gJcRg0&feature=youtu.be

MaterialEditText

EditText 的 Material Design 实现。包含 Google
Material Design Spec中的 UI 效果和一些新增特性。

项目地址:https://github.com/rengwuxian/MaterialEditText

MaterialEditText

实现 Material
Design 中 Ripple 效果线条背景的 EditText。直接替换原生 EditText 即可集成。

项目地址:https://github.com/DreamingInCodeZH/MaterialEditText

MultiActionTextView

可以分别给 TextView 中的某几个字设置点击事件的 TextView

项目地址:https://github.com/ajaysahani/MultiActionTextView

效果图:



ToggleButton

状态切换的 Button,类似 iOS,用 View 实现

项目地址:https://github.com/zcweng/ToggleButton

效果图:



SwitchButton

状态切换的 Button,类似 iOS,拥有良好的用户界面

项目地址:https://github.com/kyleduo/SwitchButton

效果图:



SlideSwitch

状态切换的开关,可以设置为类似 IOS 的圆形,也可以设置为矩形,用 View 实现

项目地址:https://github.com/Leaking/SlideSwitch

效果图:



ExpandableTextView

可展开和收缩内容的 TextView。

项目地址:https://github.com/Manabu-GT/ExpandableTextView

效果图:



TagCloudView(支持 SingleLine 模式的标签云)

标签云效果,只需要一行代码即可设置为 SingleLine 模式,轻松实现知乎问题话题列表效果。SingleLine 模式时末尾文字及图片可自定义。 项目地址:https://github.com/kingideayou/TagCloudView

示例APK地址:https://github.com/kingideayou/TagCloudView/raw/master/apk/Demo.apk

APP示例:知乎

效果图:



BubbleTextView Android Bubble View 项目地址:https://github.com/dupengtao/BubbleTextView 效果图:



shadow-layout Android Shadow Layout 解决了CardView:1.不能画圆的阴影。2.设置阴影的位置。3.设置阴影颜色。 项目地址:https://github.com/dmytrodanylyk/shadow-layout 效果图:



MoneyTextView

一个支持加法运算的金额输入TextView

项目地址:https://github.com/andyken/MoneyTextView

原文地址:http://www.devstore.cn/essay/essayInfo/6324.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: