本文介绍了android开发者中比较热门的开源代码,这些代码绝大多数可以直接应用到项目中。

FileBrowserView

一个强大的文件选择控件。界面比较漂亮,使用也很简单。特点:可以自定义UI;支持复制、剪切、删除、移动文件;可以用在Fragment、ativity、DialogFragment中;支持快速切换目录。

项目地址: https://github.com/psaravan/FileBrowserView

MultiItemRowListAdapter

多列效果的ListView,采用重新包装adapter的方式,使你的ListView可以显示成多列,跟普通的ListView相比,只会增加一行代码。

项目地址: https://github.com/umano/MultiItemRowListAdapter

android_packages_apps_Focal

一个开源的相机应用源码,由著名的rom制作团队cyanogenmod出品,曾是他们的官方相机应用,如果你想学习相机应用的编写,这是一个很好的学习材料。

项目地址: https://github.com/xplodwild/android_packages_apps_Focal

MultiChoiceAdapter

一个实现了ListView多选操作的ListAdapter,他的功能类似于ListView的CHOICE_MODE_MULTIPLE_MODAL模式,但是还有如下特点:他可以保持选择的数目 ,并且选中的状态下有一个透明的背景色;它支持2.x版本;它可以用到gridview中实现gridview的多选效果。

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

JamsMusicPlayer

一个开源的音乐播放器代码。JamsMusicPlayer本来是play store上的一个付费应用,因为google的付费应用必须显示开发者住址的政策而被迫下架。作者最终选择了将这个app开源出来。

项目地址: https://github.com/psaravan/JamsMusicPlayer

TextJustify-Android

TextJustify是对安卓TextView控件的格式优化,TextView在显示文字的时候往往在一行的中间部分就跳到了下一行,看起来很杂乱,尤其是在显示英文的时候,TextJustify解决了这个问题。

项目地址: https://github.com/bluejamesbond/TextJustify-Android

FloatingActionButton

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

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

CircularProgressDrawable

带圆形进度显示的进度条,如果你想在安卓中实现有趣的动画效果,最直接的办法是使用drawable的子类而不是button或者ImageView.

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

DragLayout[QQ5.0侧滑效果]

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

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

AndroidSlidingUpPanel

一个能够向上滑动的时候往上飞出一个显示区域的控件,类似于play music中的效果。该控件在主界面中有一个底部触发区域,该区域点击的时候被隐藏在下方的内容将网上漂移到顶部,直到被隐藏的内容完全挡住原来的布局。当被隐藏区域完全显示,这时再次点击触发区域(或者是通过下滑的手势)将恢复到最初的状态。

项目地址: https://github.com/umano/AndroidSlidingUpPanel

android-swipelistview

SwipeListView是一个Android List View实现,实现了自定义ListView单元格,可通过滑动来显示扩展面板。

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

Satellite Menu最好的仿path菜单

相信很多人都知道path上那个栩栩如生的菜单效果,网上仿照实现的开源代码我至少看到有5种,不过这个是我所知道的最好的,理由有2:1非常流畅; 2使用接口非常简单,就像使用自带的控件一样。

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

Swipecards

一个实现了可滑动卡片风格的开源项目,类似国外很火的交友软件Tinder中的卡片效果,图中的卡片可左右滑动飞出界面,分别表示喜欢和不喜欢。

项目地址: https://github.com/Diolor/Swipecards

ExFilePicker

又一个简洁的文件选择器,特点如下:可以选择文件;可以选择目录;可以选择多个文件或者目录;支持按过滤条件选择;支持排序;可以创建新的目录。

项目地址: https://github.com/bartwell/ExFilePicker

AndroidResideMenu

具有iOS 7/8 parallax effect 风格的侧边菜单,类似于最新版qq的菜单效果。ReisdeMenu 创意灵感来自于Dribbble1还有2,而这个是Android版的ResideMenu,在视觉效果上部分参考了iOS版的RESideMenu.

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

android_effects学习opengl es的好代码

一个用opengl es实现了各种逼真3d效果的代码示例程序,非常值得学习。

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

NoNonsense Notes记事与便签app

一个记事本与任务计划的app,适配和手机和平板,还可以使用google账户将数据保存到云端,动画效果做的不错 ,典型的欧美人的风格。

CalendarListview

CalendarListview 提供了在日历视图中选择一个日期的简单方法。

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

AndroidStaggeredGrid瀑布流

注意跟StaggeredGridView区别,他的实现原理更类似于PinterestLikeAdapterView。AndroidStaggeredGrid的目的是为了满足Etsy app的需求(估计是作者自己开发的一个app)。有个很不错的特点是,当横竖屏切换时,改控件可以自己定位上次浏览的位置。和ListView一样,支持添加header 和 footer。个人觉得这个才是最好的。

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

FlipView目前最流畅的翻转动画效果

该库使你通过简简单单几行代码就能实现类似flipboard的翻转效果。比起以前看到的那个android-flip库,这个要流畅很多。

项目地址: https://github.com/emilsjolander/android-FlipView

WaveView

一个实现了水波纹动态效果的自定义view,能够改变水的高度,此特性使其可以作为呈现加载效果的progressbar ,可自定义背景色以及进度等 。

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

Android-Week-View

Android Week View 是一个类似于原生日历应用中日视图和周视图的开发库,支持自定义style。

项目地址: https://github.com/alamkanak/Android-Week-View

文章源自:http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1020/1808.html

22个值得收藏的Android开源代码-UI篇的更多相关文章

  1. 22个值得收藏的android开源码-UI篇

    本文介绍了android开发人员中比較热门的开源码,这些代码绝大多数能够直接应用到项目中. FileBrowserView 一个强大的文件选择控件.界面比較美丽,使用也非常easy. 特点:能够自己定 ...

  2. 22个值得收藏的Android开源代码——cool

    转自http://www.jcodecraeer.com/a/anzhuokaifa/androidkaifa/2014/1020/1808.html 本文介绍了android开发者中比较热门的开源代 ...

  3. material design 的android开源代码整理

    material design 的android开源代码整理 1 android (material design 效果的代码库) 地址请点击:MaterialDesignLibrary 效果: 2 ...

  4. android开源代码

    Android开源项目--分类汇总 转自:https://github.com/Trinea/android-open-project Android开源项目第一篇——个性化控件(View)篇 包括L ...

  5. [转]Android开源项目第二篇——工具库篇

    本文为那些不错的Android开源项目第二篇--开发工具库篇,主要介绍常用的开发库,包括依赖注入框架.图片缓存.网络相关.数据库ORM建模.Android公共库.Android 高版本向低版本兼容.多 ...

  6. Android开源项目第二篇——工具库篇

    本文为那些不错的Android开源项目第二篇——开发工具库篇,**主要介绍常用的开发库,包括依赖注入框架.图片缓存.网络相关.数据库ORM建模.Android公共库.Android 高版本向低版本兼容 ...

  7. Android开源项目第一篇——个性化控件(View)篇

    本文为那些不错的Android开源项目第一篇——个性化控件(View)篇,主要介绍Android上那些不错个性化的View,包括ListView.ActionBar.Menu.ViewPager.Ga ...

  8. Github上不错的Android开源代码(一)

    总有一些朋友很热心的整理一些好的资料,在收集之后,可以用作阅读.学习和实践.小伙伴们,总有一天,你也能写出 Niubility 的 Android App :-) 为了防止以上链接失效,以及部分内容丢 ...

  9. 值得推荐的android开源框架

    1.volley 项目地址https://github.com/smanikandan14/Volley-demo (1) JSON,图像等的异步下载: (2) 网络请求的排序(scheduling) ...

随机推荐

  1. Oracle数据库Linux下的导出EXP

    先转一篇 ================================我是分割线================================ 时间:2013-06-22 13:48来源:未知 ...

  2. ImageOptim 图片压缩工具

    下载地址:http://www.onlinedown.net/soft/175501.htm 下载地址(官网):http://imageoptim.com ​ ImageOptim 图片压缩工具,能够 ...

  3. 基于Spring MVC的Web应用开发(三) - Resources

    基于Spring MVC的Web应用开发(3) - Resources 上一篇介绍了在基于Spring MVC的Web项目中加入日志,本文介绍Spring MVC如何处理资源文件. 注意到本项目的we ...

  4. PHP 将json的stdClass Object转成数组array

    PHP和JS通讯通常都用json,但是PHP要用json的数据,通过json_decode转出来的数组并不是标准的array,所以需要用这个函数进行转换. function object_array( ...

  5. HDU-5781 ATM Mechine(概率DP)

    题目大意:某个未知整数x等概率的分布在[0,k]中.每次你都可以从这个整数中减去一个任意整数y,如果x>=y,那么x=x-y,操作次数累计加1:否则,将会受到一次错误提示.当错误提示超过w次,将 ...

  6. ARM体系的7种工作模式

    一.ARM体系的CPU有以下7种工作模式:   用户模式(usr)    大多数程序运行于用户模式 特权模式   系统模式(sys)   运行具有特权的操作系统任务 异常模式 中断模式(irq)   ...

  7. What are the main disadvantages of Java Server Faces 2.0?

    http://stackoverflow.com/questions/3623911/what-are-the-main-disadvantages-of-java-server-faces-2-0/ ...

  8. PHP快速排序及其时间复杂度

    <?php function quickSort(&$arr, $l, $r) { if (count($arr)<2 || $l>$r) return; $tmp_l = ...

  9. MvcPager2.0 中分页初始化失败的问题

    页面初始化时只有一页数据,或没数据时,出现分页控件初始化失败以及后续Ajax分页功能失效的问题, <div class="pagin"> <div class=& ...

  10. android 完全退出应用程序(重要)

    android退出应用程序会调用android.os.Process.killProcess(android.os.Process.myPid())或是System.exit(0),这只是针对第一个A ...