GitHub 优秀的 Android 开源项目

但使书种多,会有岁稔时。这篇文章主要讲述GitHub 优秀的 Android 开源项目相关的知识,希望能为你提供帮助。
转自:http://blog.csdn.net/shulianghan/article/details/18046021
 
主要介绍那些不错个性化的View,包含ListView、ActionBar、Menu、ViewPager、Gallery、GridView、ImageView、ProgressBar及其它如Dialog、Toast、EditText、TableView、Activity Animation等等。


一、ListView 

  1. android-pulltorefresh 一个强大的拉动刷新开源项目。支持各种控件下拉刷新
    ListView、ViewPager、WevView、ExpandableListView、GridView、(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. 【GitHub 优秀的 Android 开源项目】DropDownListView 下拉刷新及滑动究竟部载入很多其它ListView
    项目地址:https://github.com/Trinea/AndroidCommon
    Demo地址:https://play.google.com/store/apps/details?id=cn.trinea.android.demo
    文档介绍:http://www.trinea.cn/?p=523
  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. StickyListHeaders GroupName滑动到顶端时会固定不动直到另外一个GroupName到达顶端的ExpandListView。支持高速滑动。支持Android2.3及以上
    项目地址:https://github.com/emilsjolander/StickyListHeaders
    APP演示样例:Android 4.0联系人
    效果图:
    GitHub 优秀的 Android 开源项目

    文章图片

    https://dl.dropboxusercontent.com/u/11369687/preview1.png
    https://dl.dropboxusercontent.com/u/11369687/raymenu.png
  8. 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
  9. radial-menu-widget 圆形菜单,支持二级菜单
    项目地址:https://code.google.com/p/radial-menu-widget/
    效果图:http://farm8.staticflickr.com/7377/11621125154_d1773c2dcc_o.jpg
  10. Android Wheel Menu 圆形旋转选取菜单
    项目地址:https://github.com/anupcowkur/Android-Wheel-Menu
    效果图:
    GitHub 优秀的 Android 开源项目

    文章图片

 
四、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
    效果图:
    GitHub 优秀的 Android 开源项目

    文章图片

  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. Salvage view 带View缓存的Viewpager PagerAdapter,非常方便使用
    项目地址:https://github.com/JakeWharton/salvage
 
五、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。类似桌面的单屏效果
    项目地址:https://github.com/thquinn/DraggableGridView
    Demo地址:https://github.com/thquinn/DraggableGridView/blob/master/bin/DraggableGridViewSample.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
    项目地址:https://github.com/koral--/android-gif-drawable
    用jni实现的,编译生成so库后直接xml定义view就可以,并且本身不依赖于其它开源项目所以相对以下的ImageViewEx简单的多
  3. ImageViewEx 支持Gif显示的ImageView
    项目地址:https://github.com/frapontillo/ImageViewEx
    Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/imageviewex-demo.apk?raw=true
    依赖非常多。编译过程非常繁琐!|_|!
  4. RoundedImageView 带圆角的ImageView
    项目地址:https://github.com/vinc3m1/RoundedImageView
    效果图:
    GitHub 优秀的 Android 开源项目

    文章图片

  5. HoloCircularProgressBar Android4.1 时钟App样式
    项目地址:https://github.com/passsy/android-HoloCircularProgressBar
    APP演示样例:Android4.1时钟App
    效果图:https://raw.github.com/passsy/android-HoloCircularProgressBar/master/raw/screenshot1.png
 
八、其它 
    1. achartengine 强大的图标绘制工具
      支持折线图、面积图、散点图、时间图、柱状图、条图、饼图、气泡图、圆环图、范围(高至低)条形图、拨号图/表、立方线图及各种图的结合
      项目地址:https://code.google.com/p/achartengine/
      官方站点:http://www.achartengine.org/
      效果图:
      GitHub 优秀的 Android 开源项目

      文章图片

      http://www.achartengine.org/dimages/sales_line_and_area_chart.png
      http://www.achartengine.org/dimages/temperature_range_chart.png
      http://www.achartengine.org/dimages/combined_chart.png
      http://www.achartengine.org/dimages/budget_chart.png
      APP演示样例:Wordpress Android,Google Analytics
    2. GraphView 绘制图表和曲线图的View
      可用于Android上的曲形图、柱状图、波浪图展示
      项目地址:https://github.com/jjoe64/GraphView
      Demoproject:https://github.com/jjoe64/GraphView-Demos
      Demo地址:https://play.google.com/store/apps/details?id=com.sothree.umano
      APP演示样例:Wordpress Android,Google Analytics
    3. android-flip 类似Flipboard翻转动画的实现
      项目地址:https://github.com/openaphid/android-flip
      Demo地址:https://github.com/openaphid/android-flip/blob/master/FlipView/Demo/APK/Aphid-FlipView-Demo.apk?raw=true
      APP演示样例:flipboard
    4. FlipImageView 支持x、y、z及动画选择的翻转动画的实现
      项目地址:https://github.com/castorflex/FlipImageView
      Demo地址:https://play.google.com/store/apps/details?id=fr.castorflex.android.flipimageview
    5. SwipeBackLayout 左右或向上滑动返回的Activity
      项目地址:https://github.com/Issacw0ng/SwipeBackLayout
      Demo地址:https://play.google.com/store/apps/details?id=me.imid.swipebacklayout.demo
      APP演示样例:知乎
    6. Cards-UI 卡片式View。支持单个卡片,item为卡片的ListView
      项目地址:https://github.com/afollestad/Cards-UI
      Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/cards-ui-demo.apk?raw=true
    7. cardslib 卡片式View,支持单个卡片,item为卡片的ListView和GridView
      项目地址:https://github.com/gabrielemariotti/cardslib
      Demo地址:https://play.google.com/store/apps/details?id=it.gmariotti.cardslib.demo
    8. android-styled-dialogs 可自己定义样式的dialog
      默认与Holo主题样式一致,在Android2.2以上同一样式
      项目地址:https://github.com/inmite/android-styled-dialogs
      Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/styled-dialogs-demo.apk?raw=true
    9. Crouton 丰富样式的Toast
      同意alert、comfirm、info样式及点击消失样式,同意设置Toast显示时间,同意自己定义View。
      项目地址:https://github.com/keyboardsurfer/Crouton
      Demo地址:http://play.google.com/store/apps/details?
      id=de.keyboardsurfer.app.demo.crouton
    10. supertooltips 带动画效果的Tips显示
      项目地址:https://github.com/nhaarman/supertooltips
      Demo地址:https://play.google.com/store/apps/details?
      id=com.haarman.supertooltips
    11. Android ViewBadger为其它View加入角标等
      项目地址:https://github.com/jgilfelt/android-viewbadger
      Demo地址:https://github.com/Trinea/TrineaDownload/blob/master/android-viewbadger.apk?raw=true

    推荐阅读