点击上方“CSDN”,选择“置顶公众号”

关键时刻,第一时间送达!

作者简介:杨守乐,CSDN 知名博主,关注 Android、Java 领域,现在主要专注于音视频开发,有个同名公众号,喜欢分享技术之事。

这些是自 2017 年 3 月以来我最喜欢的 30 个新的 Android 库。他们中的一些还没有做好生产准备,但是使用它们可能会有很多乐趣。希望你喜欢这些。

这里没有特别的顺序:

1. Matisse

这是一个美丽的本地图像和视频选择器。主要功能:

  • 选择包括 JPEG,PNG,GIF 和包括 MPEG,MP4;

  • 应用自定义主题,包括两个内置的主题;

  • 不同的图像加载器;

  • 定义自定义过滤规则;

  • 在 Activity 和 Fragment 内完全操作。

Libraries:https://github.com/zhihu/Matisse/wiki

2. Spruce Android 动画库

Spruce 是一个轻量级的动画库,帮助编排屏幕上的动画。有了这些不同的动画库,开发人员需要确保每个视图都在适当的时候动画。Spruce 可以帮助设计师请求复杂的多视图动画,而不是让开发人员对原型感到畏惧。

Libraries:https://github.com/willowtreeapps/spruce-android

3. MaterialChipsInput

Chips 是在材料设计中呈现。

在小块中表示复杂的实体,如联系人。Chips 可以包含照片,文字,规则,图标或联系人等实体。

MaterialChipsInput 是 Android 的该组件的实现。库提供了两个视图:ChipsInput and ChipView.。

Libraries:https://github.com/pchmn/MaterialChipsInput

4. Grav

这个库允许创建基于点的多个动画。看看 - 你可以很容易地做出光滑美丽的动画。README 文件包含很多例子,所以你可以在这里查看。

Libraries:https://github.com/glomadrian/Grav

5. Litho

Litho 不是一个库,它是一个框架。一个非常强大的框架,以声明的方式构建用户界面。它是由 Facebook 开发者开发的,所以即使你不想尝试,仍然值得观察和跟踪一个开发过程。

主要功能包括:

  • 使用声明式 API 来定义 UI 组件。您只需根据一组不可变的输入描述 UI 的布局,其余的框架就可以完成。

  • 异步布局:Litho 可以提前测量和布局您的 UI,而不会阻塞 UI 线程。

  • 视图展平:Litho 使用 Yoga 进行布局,并自动减少 UI 包含的 ViewGroup 数量。

  • 细粒度回收:任何组件(如文本或图像)都可以在 UI 中的任何位置进行回收和重用。

Libraries:https://github.com/facebook/litho

6. Adaptable Bottom Navigation

前段时间 Google 更新了 Material Design 指南,并介绍了底部的导航栏,作为我们的应用程序中遵循的几个优秀的 UI 模式之一。他们还将实现添加到设计支持库。

自适应底部导航可以很容易地 BottomNavigationView 从支持库中取代。它是以如何 ViewPager 和 TabLayout 工作的方式实施的。这是 Buffer 小组的简短解释:

如前所述,在 Android 支持库中使用底部导航视图时,可能会有许多样板代码用于切换视图。正因为如此,我们从 TabLayout 的 setupWithViewPager()方法中获得了灵感,并创建了一个自定义的 ViewSwapper 组件,该组件可以附加到底部导航视图以简化视图显示的管理。

你可以关于 Github。有一个相当全面的文档和解释,为什么它被实现(提示:整洁架构?)。

Libraries: https://github.com/bufferapp/AdaptableBottomNavigation

7. PatternLockView

该库允许您轻松快速地在您的应用中实现模式锁定机制。它非常易于使用,并且有大量的自定义选项可用来更改此视图的功能和外观以满足您的需求。

它也支持 RxJava 2 视图绑定,所以如果你是反应式编程(就像我一样),当用户绘制模式时,你可以得到一串更新。

该自述充满了例子,所以很容易下手库。

Libraries:https://github.com/aritraroy/PatternLockView

8. Isometric

这是一个开源库,帮助绘制等距形状。在我看来,它是这个清单中最酷的图书馆之一,它让我想起了纪念碑谷游戏。

该库支持绘制多个形状、路径和复杂结构,如下面的示例。

Libraries:https://github.com/FabianTerhorst/Isometric

9. UltraViewPager

我们可以把这个库作为一个 ViewPager 扩展来封装许多功能,主要是为多页面切换场景提供统一的解决方案。

UltraViewPager 支持:

  • 水平滚动和垂直滚动;

  • 在一个多视图 ViewPager;

  • 循环切换视图。例如,如果在 a 中显示 3 个视图 ViewPager,则应在第三个视图之后切换回第一个视图;

  • 自动滚动功能(实现定时器使用 Handler);

  • 设置最大高度和最大宽度;

  • 设置纵横比;

  • 说明我们目前的视图(圆圈和图标);

  • 内置两种页面转换动画;

  • 这个库也有很好的文档。

Libraries:https://github.com/alibaba/UltraViewPager

10. InfiniteCards

这个库有助于实现 UI 卡,然后用一个漂亮的动画切换它们。

Libraries:https://github.com/BakerJQ/Android-InfiniteCards

11. SlidingRootNav

这是一个图书馆,我们可以把它看作是一个 DrawerLayout ViewGroup,在内容视图下隐藏一个抽屉,然后可以移动,使抽屉可见。REAMDE 相当全面,值得一试。

Libraries:https://github.com/yarolegovich/SlidingRootNav

12. PasscodeView

这只是一个可以输入密码的视图。

Libraries:https://github.com/hanks-zyh/PasscodeView

13. MusicWave

该库允许将声音表示为渐变色可视化。

Libraries:https://github.com/akshay2211/MusicWave

14. ShadowImageView

这个库可以帮助你添加更有意义的阴影到你的图像。根据自述文件,它是更精美的阴影效果,在一些特殊的场景中用来增强用户体验。而且,它很容易使用。

Libraries:https://github.com/yingLanNull/ShadowImageView

15. PolygonDrawingUtil

这是一个高效的 Android 实用工具类,用于绘制正方形的多边形 Canvas。我们可以指定:边数(≥3),中心坐标,外半径(中心到顶点),圆角半径,多边形旋转,填充/Paint。

Libraries:https://github.com/stkent/PolygonDrawingUtil

16. Tiny

这是名单上的第二个框架。它负责图像压缩,这是相当强大的。另外,它使用异步线程池来压缩图像,并在压缩完成时将结果发布在主线程中。

Libraries:https://github.com/Sunzxyong/Tiny

17. ParticleTextView

该库提供了一个自定义 TextView 小部件,可以使用各种动画效果和配置属性从粒子创建文本。

Libraries:https://github.com/Yasic/ParticleTextView

18. CropIwa

这是一个高度可配置的图像裁剪小部件。该库具有模块化架构,使其具有高度可配置性。有关如何配置的信息,CropIwaView 请参阅 Github 上的 Wiki。

Libraries:https://github.com/steelkiwi/cropiwa

19. Project Condom

这是一个精简的库,Context 在将其传递给第三方 SDK 之前,将其裸露在您的 Android 项目中。它旨在防止第三方 SDK 从常见的不良行为,这可能会损害您的应用程序的用户体验。

这里是解释:

在其他应用程序中大量启动进程(在第三方推送 SDK 中很常见),导致应用程序启动缓慢,并且在低端到中端设备上显着滞后。这种行为在具有类似 SDK 的应用程序之间产生了连锁反应,大大加剧了整体设备的性能。

Libraries:https://github.com/oasisfeng/condom

20. AppMethodOrder

这个库允许你跟踪所有的函数调用顺序。该项目是有据可查的,你可以找到详细的手册如何使用它。唯一的限制是,它是用中文书写的,但是你可以随时在浏览器中点击翻译成英文,享受这个伟大的项目。

Libraries:https://github.com/zjw-swun/AppMethodOrder

21. Android DebugKit

这是一个有趣的开源库。它允许您创建和使用特殊的悬停调试工具,来触发您在应用程序中定义的操作。这些行为显然可以在运行时触发,因此可以在反馈写入或测试电话屏幕时使用。

Libraries:https://github.com/hulab/debugkit

22. Aesthetic

这是一个新的库,仍然在测试版,但它确实很酷 - 它动态地改变你的主题与 Rx 的支持!据作者说,这是一个快速和易于使用的即插即用动态主题引擎。由 Rx 提供支持,适用于 Android 应用程序。

该文件是非常好的,全面的,绝对值得检查。

Libraries:https://github.com/afollestad/aesthetic

23. EasyCalendar

这是一个简单的自定义日历小部件。主要功能包括:

  • 自定义布局的标题;

  • 自定义布局的日期;

  • 显示或隐藏分隔线的日期;

  • 显示或隐藏溢出日期;

  • 听取日期的看法点击。

文档是全面的,图书馆易于使用。

Libraries:https://github.com/shichaohui/EasyCalendar

24. SimpleRatingBar

这个库提供了两个评级栏:

  • BaseRatingBar - 没有任何动画;

  • ScaleRatingBar - 具有渐进和缩放动画。

你可以在下面看到他们的 Gif:

Libraries:https://github.com/ome450901/SimpleRatingBar

25. Magellan

这个库被称为 Android 最简单的导航库,但你需要检查是否值得使用它。

主要特点:

  • 导航和调用 goTo(screen)方法一样简单;

  • 你完全控制了后台;

  • 转换会自动为您处理。

它有全面的维基和所有需要的解释。

Libraries:https://github.com/wealthfront/magellan

26. ViewPagerAnimator

ViewPagerAnimator 是一个新的轻量级,但功能强大的 Android 的 ViewPager 动画库。它被设计为在用户在 ViewPager 中的页面之间导航时动画任意值,并且将精确地跟随手指的运动。虽然图书馆本身可能对某些人有用,但是出版这个图书馆的主要目的是为了展示一些很棒的 API 细节,当使用即将推出的 Java 8 扩展时,这些细节真的会出现。提供了 Java 7 和 Java 8 的示例项目。

它由 Mark Allison 编写,您可以在他的 Styling Android 博客上获得更多信息。

Libraries:https://github.com/StylingAndroid/ViewPagerAnimator

27. BlockCanaryEx

这是一个开源库,它有助于在应用程序被阻止时在代码中查找繁重的方法。它基于 BlockCanary。

Libraries:https://github.com/seiginonakama/BlockCanaryEx

28. PaletteImageView

这是相当酷的开源库。它为您的图像添加阴影,但阴影的颜色是主要的图像颜色。

Libraries:https://github.com/DingMouRen/PaletteImageView

29. RecyclerRefreshLayout

这是一个打开相机快门的刷新动画。在我看来确实值得检查一下,特别是在 README 里有一个数学分析,该如何实现这个效果!

Libraries:https://github.com/dinuscxj/ShootRefreshView

30. SlimAdapter

这是一种无需编写 Adapter 的方法 ViewHolder。主要功能包括:

  • ViewHolders

  • 无反射

  • 流畅和简单的 API

  • 多种类型的适配器

  • 支持 Kotlin

  • 支持简单的 DiffUtil

Libraries:https://github.com/MEiDIK/SlimAdapter

到这就结束了。我希望你喜欢这篇文章!如果我没有提到在今年最新发布的其他伟大的 Libraries(开源库),请在下面的评论中告诉我。让我们把这份清单放在一起!

赶在 2018 年前推荐 30 个最火爆的开源库相关推荐

  1. 准备学习研究一下语音识别 请问有哪些值得推荐的书籍 论文 及开源库?

    推荐给各位两个国外关于语音的课程: Columbia University E6894,Deep Learning for Computer Vision, Speech, and Language ...

  2. 2018年前35名Python面试问题和答案

    要使用Python作为更新的工作,您必须熟悉基础知识.在这里,我整理了一些基本的Python面试问题和答案以及一些高级Python问题和答案,以帮助您完成面试.有Python开发人员面试问题,Pyth ...

  3. 推荐30款最佳的数据可视化工具

    各个互联网公司通过大量的用户数据.信息进行统计分析,而这些大量繁杂的数据在经过可视化工具处理后,就能以图形化的形式展现在用户面前,清晰直观.随着各种数据的增加,这种可视化工具越来越得到开发者们的欢迎. ...

  4. 你想看啥电子书,这里能帮你免费下载哦。给友友们推荐30+电子书下载网站或搜索引擎,以及3+电子书下载导航网站。

    你想看啥电子书,这里能帮你免费下载哦 恩......今天开始不定期为大家更新干货资源哦,绝对的干货满满,以防找不到我可以点赞或关注一下我哦.喜欢看电子书的友友这篇文章能够帮助到你哦,给友友们推荐30+ ...

  5. 2018年,30而立,30而已

    2018年,30而立,30而已 一晃眼2018年已经过去了, 而在我的印象中, 它好像就没来过. 现在这个世界, 人走的匆匆, 时间也走的匆匆. 大家你追我赶的奔向未知的明天,后天, 却又争先恐后的回 ...

  6. 哈尔滨工程大学计算机学院研究生推免细则,哈尔滨工程大学2018招收推荐免试研究生办法...

    2018考研交流群 586254585 以下是中公考研小编整理的哈尔滨工程大学2018招收推荐免试研究生办法,以供各位考生参考. 为提高我校生源质量,探索选拔高层次创新人才的有效途径,选拔优秀学生到我 ...

  7. 向设计师推荐30款很酷的复古字体

    本文向设计师推荐30款很酷的复古字体,你可以免费下载使用.这些免费英文字体特别适合网页设计师,平面设计师和电脑艺术人员.如果你正在寻找漂亮的免费字体,那么这份清单正是为你准备的,赶紧下载吧. Just ...

  8. 推荐 30 款最好的免费项目管理软件

    本文向你推荐30款免费的项目管理软件,其中有些是桌面应用,还有一些基于Web的平台,其中不乏优秀开源软件. TeamLab TeamLab 是一个免费开源的商业协作和项目管理的平台.TeamLab 主 ...

  9. 推荐30款开源项目管理软件

    转自:http://www.oschina.net/news/17857/30-free-project-management-software-systems 本文向你推荐30款免费的项目管理软件, ...

最新文章

  1. python 删除文件某一行
  2. [ 测试管理 ] 如何描述缺陷报告?
  3. 浅析Memcache和Redis
  4. 收集常用的Linux常用命令
  5. Java并发编程面试题(2020最新版)
  6. codeforces C. Design Tutorial: Make It Nondeterministic
  7. 03-windows下Oracle的下载与安装
  8. jenkins html编辑,Jenkins HTML Publisher插件:Jenkins 1.643没有外部链接
  9. java基础----多态性
  10. Eclipse里编辑代码,进度条出现“Remote System Explorer Operation”解决方法
  11. 潍坊首个小学“教育创客空间”落户呼家庄小学 萝卜(创客)教育走进小学课堂...
  12. 《矩阵分析》Ⅳ——三对角矩阵的追赶法matlab实现
  13. LINUX查询版本情况
  14. 【python】字符串转换整数 (atoi) - String
  15. vs2013实现duilib结合cef的demo
  16. 转 可以word ,excel ,pdf ,ppt 导入和导出的思维导图
  17. RTSP/Onvif安防网络摄像头无插件直播流媒体服务EasyNVR如何实现网络摄像机Onvif/RTSP接入直播与云台控制
  18. 用于计算圆柱体体积和面积的Python程序
  19. ACM进阶计划(来自于南阳理工学院)
  20. 时间序列分析这件小事(五)--MA模型

热门文章

  1. C++11多线程---互斥量、锁、条件变量的总结
  2. ssm如何支持热部署_IntelliJ IDEA基于SpringBoot如何搭建SSM开发环境
  3. Java 处理空指针异常(java.lang.NullPointerException)空比较
  4. html页面可以用在webview,使用WebView加载HTML代码
  5. 韩国成功研发变色龙软体机器人;曝新iPhone将推出摄影版“人像模式”;Android 12 Beta 4发布|极客头条...
  6. 最后一周!4000+HC免笔试!字节跳动2022校招研发提前批倒计时
  7. iOS 15 如何让 App 启动更快?
  8. 人工智能中国专利技术分析报告发布,百度三年蝉联榜首
  9. 优秀的程序员真的不写注释吗? | 原力计划
  10. 仅需 5 步,用 JavaScript 直接通过前端发送电子邮件