160多个android开源码汇总

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

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

一、ListView

  1. android-pulltorefresh
    一个强大的拉动刷新开源项目,支持各种控件下拉刷新,ListView、ViewPager、WevView、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演示样例:新浪微博各个页面

  2. android-pulltorefresh-listview
    下拉刷新ListView
    项目地址:https://github.com/johannilsson/android-pulltorefresh
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refresh-listview-demo.apk?raw=true
    PS:这个被非常多人使用的项目实际有不少bug,推荐使用上面的android-pulltorefresh

  3. DropDownListView
    下拉刷新及滑动究竟部载入很多其它ListView
    项目地址:https://github.com/Trinea/AndroidCommon
    Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
    文档介绍:http://www.trinea.cn/android/dropdown-to-refresh-and-bottom-load-more-listview/

  4. 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

  5. SwipeListView
    支持定义ListView左右滑动事件,支持左右滑动位移。支持定义动画时间
    项目地址:https://github.com/47deg/android-swipelistview
    Demo地址:https://play.google.com/store/apps/details?

    id=com.fortysevendeg.android.swipelistview
    APP演示样例:微信

  6. Android-SwipeToDismiss
    滑动Item消失ListView
    项目地址:https://github.com/romannurik/Android-SwipeToDismiss
    支持3.0下面版本号见:https://github.com/JakeWharton/SwipeToDismissNOA
    Demo地址:https://github.com/JakeWharton/SwipeToDismissNOA/SwipeToDismissNOA.apk/qr_code

  7. PinnedHeaderExpandableListView
    首先它是一个ExpandableListView,可是它的头部能够固定,其次,在它的上面另一个头部能够来回伸缩
    项目地址:https://github.com/singwhatiwanna/PinnedHeaderExpandableListView
    APP演示样例:百度手机卫士垃圾清理界面
    效果图:Renderings

  8. StickyListHeaders
    GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView。支持高速滑动。支持Android2.3及以上
    项目地址:https://github.com/emilsjolander/StickyListHeaders
    APP演示样例:Android 4.0联系人
    效果图:Renderings

  9. pinned-section-listview
    GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView
    项目地址:https://github.com/beworker/pinned-section-listview
    效果图:Renderings

  10. PinnedHeaderListView
    GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView
    项目地址:https://github.com/JimiSmith/PinnedHeaderListView

  11. 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

  12. IndexableListView
    ListView右側会显示item首字母快捷索引。点击可高速滑动到某个item
    项目地址:https://github.com/woozzu/IndexableListView
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/indexable-listview.apk?raw=true
    APP演示样例:微信通讯录、小米联系人

  13. CustomFastScrollView
    ListView高速滑动,同一时候屏幕中间PopupWindows显示滑动到的item内容或首字母
    项目地址:https://github.com/nolanlawson/CustomFastScrollViewDemo
    效果图:Renderings

  14. Android-ScrollBarPanel
    ListView滑动时固定的Panel指示显示在scrollbar旁边
    项目地址:https://github.com/rno/Android-ScrollBarPanel
    效果展示:https://github.com/rno/Android-ScrollBarPanel/raw/master/demo_capture.png

  15. 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

  16. 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/

  17. 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

  18. DevsmartLib-Android
    横向ListView
    项目地址:https://github.com/dinocore1/DevsmartLib-Android
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/horizontal-listview-demo.apk?raw=true

  19. HorizontalVariableListView
    支持Item宽度不一致的ListView
    项目地址:https://github.com/sephiroth74/HorizontalVariableListView

  20. LinearListView
    用LinearLayout实现的ListView,可解决多个ListView而且等问题。眼下自己也有须要,等亲自尝试过后会再详细介绍
    项目地址:https://github.com/frankiesardo/LinearListView

  21. MultiChoiceAdapter
    支持多选的ListView Adapter
    项目地址:https://github.com/ManuelPeinado/MultiChoiceAdapter
    Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.multichoiceadapter.demo

  22. 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

  23. ListBuddies
    自己主动滚动的双列ListView ,两个ListView滚动速度不一致,有视差效果
    项目地址:https://github.com/jpardogo/ListBuddies
    Demo地址:https://play.google.com/store/apps/details?id=com.jpardogo.android.listbuddies
    效果展示:Renderings

二、ActionBar

  1. ActionBarSherlock
    为Android全部版本号提供统一的ActionBar,解决4.0下面ActionBar的适配问题
    项目地址:https://github.com/JakeWharton/ActionBarSherlock
    Demo地址:https://play.google.com/store/apps/details?id=com.actionbarsherlock.sample.demos
    APP演示样例:太多了。

    。如今连google都在用

  2. 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,知乎等

  3. FadingActionBar
    ListView向下滚动逐渐显现的ActionBar
    项目地址:https://github.com/ManuelPeinado/FadingActionBar
    Demo地址:https://play.google.com/store/apps/details?id=com.manuelpeinado.fadingactionbar.demo
    APP演示样例:google music。知乎

  4. 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音乐

  5. RefreshActionItem
    带进度显示和刷新button的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.

  6. GlassActionBar
    类似玻璃的有一定透明度的ActionBar
    项目地址:https://github.com/ManuelPeinado/GlassActionBar
    Demo地址:https://play.google.com/store/apps/details?

    id=com.manuelpeinado.glassactionbardemo
    APP演示样例:google music

三、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三种动画样式出现。


    项目地址:https://github.com/jfeinstein10/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
    MenuDrawer和SlidingMenu比較:SlidingMenu支持菜单动画样式出现,MenuDrawer支持菜单view处于内容的上下层

  3. ArcMenu
    支持类似Path的左下角动画旋转菜单及横向划出菜单、圆心弹出菜单
    项目地址:https://github.com/daCapricorn/ArcMenu
    APP演示样例:Path
    效果图:Renderings
    https://dl.dropboxusercontent.com/u/11369687/preview1.png
    https://dl.dropboxusercontent.com/u/11369687/raymenu.png

  4. 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

  5. radial-menu-widget
    圆形菜单。支持二级菜单
    项目地址:https://code.google.com/p/radial-menu-widget/
    效果图:http://farm8.staticflickr.com/7377/11621125154_d1773c2dcc_o.jpg

  6. Android Wheel Menu
    圆形旋转选取菜单
    项目地址:https://github.com/anupcowkur/Android-Wheel-Menu
    效果图:Renderings

  7. FoldingNavigationDrawer
    滑动并以折叠方式打开菜单
    项目地址:https://github.com/tibi1712/FoldingNavigationDrawer-Android
    Demo地址:https://play.google.com/store/apps/details?

    id=com.ptr.folding.sample
    效果图:Renderings

  8. AndroidResideMenu
    仿 Dribbble 的边栏菜单
    项目地址:https://github.com/SpecialCyCi/AndroidResideMenu
    效果图:Renderings

四、ViewPager 、Gallery

  1. Android-ViewPagerIndicator
    配合ViewPager使用的Indicator。支持各种位置和样式
    项目地址:https://github.com/JakeWharton/Android-ViewPagerIndicator
    Demo地址:https://play.google.com/store/apps/details?id=com.viewpagerindicator.sample
    APP演示样例:太多了。。

  2. JazzyViewPager
    支持Fragment切换动画的ViewPager,动画包含转盘、淡入淡出、翻页、层叠、旋转、方块、翻转、放大缩小等
    项目地址:https://github.com/jfeinstein10/JazzyViewPager
    Demo地址:https://github.com/jfeinstein10/JazzyViewPager/blob/master/JazzyViewPager.apk?raw=true
    效果类似桌面左右切换的各种效果,只是桌面并不是用ViewPager实现而已

  3. Android-DirectionalViewPager
    支持横向和纵向(垂直)的ViewPager
    项目地址:https://github.com/JakeWharton/Android-DirectionalViewPager
    Demo地址:https://market.android.com/details?

    id=com.directionalviewpager.sample

  4. android-pulltorefresh
    支持下拉刷新的ViewPager
    项目地址:https://github.com/chrisbanes/Android-PullToRefresh
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/pull-to-refreshview-demo.apk?raw=true
    APP演示样例:新浪微博各个页面

  5. FancyCoverFlow
    支持Item切换动画效果的类似Gallery View
    项目地址:https://github.com/davidschreiber/FancyCoverFlow
    Demo地址:https://play.google.com/store/apps/details?id=at.technikum.mti.fancycoverflow.samples
    效果图:Renderings

  6. 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演示样例:类似微信中查看聊天记录图片时可双击放大。而且放大情况下能正常左右滑动到前后图片

  7. 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/

  8. Salvage view
    带View缓存的Viewpager PagerAdapter。非常方便使用
    项目地址:https://github.com/JakeWharton/salvage

  9. Android PagerSlidingTabStrip
    配合ViewPager使用的Indicator。支持ViewPager Scroll时Indicator联动
    项目地址:https://github.com/astuetz/PagerSlidingTabStrip
    Demo地址:https://play.google.com/store/apps/details?id=com.astuetz.viewpager.extensions.sample

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

  11. AnimaTabsview
    仿网易云音乐标签切换的动画,带透明小三角
    项目地址:https://github.com/wuyexiong/transparent-over-animtabsview
    在线演示:http://v.youku.com/v_show/id_XNzA4MjY5NjA0.html

五、GridView

  1. 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等

  2. AndroidStaggeredGrid
    同意非对齐行的GridView,类似Pinterest的瀑布流,继承自AbsListView
    项目地址:https://github.com/etsy/AndroidStaggeredGrid
    APP演示样例:Pinterest等

  3. PinterestLikeAdapterView
    同意非对齐行的GridView,类似Pinterest的瀑布流,同意下拉刷新
    项目地址:https://github.com/GDG-Korea/PinterestLikeAdapterView
    APP演示样例:Pinterest等

  4. DraggableGridView
    Item可拖动交换位置的GridView。实际是自己继承ViewGroup实现,类似桌面的单屏效果,可屏幕自己主动上下滚动进行Item移动交换。多屏效果见以下PagedDragDropGrid
    项目地址:https://github.com/thquinn/DraggableGridView
    Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.apk?raw=true

  5. StickyGridHeaders
    GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的GridView
    项目地址:https://github.com/TonicArtos/StickyGridHeaders
    效果图:Renderings

  6. PagedDragDropGrid
    Item可拖动交换位置、拖动删除的自己定义控件,实际是自己继承ViewGroup实现。类似桌面的多屏效果。可拖动到屏幕边缘。屏幕自己主动左右滚动进行Item移动交换。可拖动进行删除,单屏效果见上面DraggableGridView
    项目地址:https://github.com/mrKlar/PagedDragDropGrid
    在线演示:http://youtu.be/FYTSRfthSuQ

  7. 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

六、ImageView

  1. PhotoView
    支持双击或双指缩放的ImageView。在ViewPager等Scrolling view中正常使用,相比上面的AndroidTouchGallery,不仅支持ViewPager,同一时候支持单个ImageView
    项目地址:https://github.com/chrisbanes/PhotoView
    Demo地址:https://play.google.com/store/apps/details?id=uk.co.senab.photoview.sample
    APP演示样例:photup

  2. android-gif-drawable
    支持gif显示的view,用jni实现的,编译生成so库后直接xml定义view就可以,并且本身不依赖于其它开源项目所以相对以下的ImageViewEx简单的多
    项目地址: