它是用Material Design实现 Steppers的 。
目前,Stepper 只有垂直视图,但将来会有更多的风格。你可以尝试一下,如下图:
你可以自定义 normal/active 两个状态的颜色,完成图标,开启动画并设置动画时长。可通过Github上的设置项和样式查阅所有设置项。
该库支持 API 17+,详情请查阅wiki文档。
链接:
https://github.com/fython/MaterialStepperView
这是分屏滚动的 Android 库。MultiSnapRecyclerView 为 RecyclerView 提供了分屏功能。
目前提供的功能有:
start
, end
和center
三个位置的吸附;
snap count
指定要分屏的数量;
支持水平和垂直分屏;
滚动时的回调。
链接:
https://github.com/TakuSemba/MultiSnapRecyclerView
该库实现如下的布局:
GarlandView 外部是一个水平滚动的视图,视图内的每一个子视图可垂直滚动。
你可以在 README 中找到其他重要信息,还有一个示例 App,该库支持 API 19 及更高版本。
链接:
https://github.com/Ramotion/garland-view-android
这是一个自定义的布局管理器
——滚动时缩小并淡出头部。这是受到 Dribble项目的启发。
链接:
https://github.com/xmuSistone/VegaLayoutManager
这个库的名字不言而喻,它是一个基于LinearLayout
的可扩展的布局。
README 里含有你启动时需要的所有信息,另外,还有一个示例 App 可以帮助你快速跳转到代码中。
链接:
https://github.com/iammert/ExpandableLayout
SwipeBackLayout
允许你使用手势返回上一个界面。你可以设置滑动方向,如从左到右、从右到左、从顶部到底部、从底部到顶部。
你还可以设置是否只能从边缘滑动。
SwipeBackLayout
只能包含一个子布局,例如:
LinearLayout
,RelativeLayout
,FrameLayout
,TableLayout
等。
ScrollView
,HorizontalScrollView
,NestedScrollView
等。
RecyclerView
,AbsListView
(ListView
) 等子类。
ViewPager
,WebView
等。
该项目里面有一个详细说明的文档、示例 APP 和一个 APK。
链接:
https://github.com/gongwen/SwipeBackLayout
这是一个可以智能剪裁图像的库,可以识别边框并修正裁剪后的图像,适用于身份证、名片、文件等其他图片文件的裁剪。
特征:
以智能的方式裁剪图片,还可以识别边框;
支持拖动、放大效果以提升定位体验;
使用透视变换裁剪, 可以修正先前裁剪的图片;
支持多种 UI 设置,如辅助线、蒙版、设置锚点、放大等效果。
目前,此库采用优化点算法,CropImageView
具有选择放大效果,而且它可以使用CropImageView XML
来进行设置。
链接:
https://github.com/pqpo/SmartCropper
Date Range Picker 是具有改进 UI 的自定义日期范围选择器。
项目的简介写得很好,易于理解。
链接:
https://github.com/savvisingh/DateRangePicker
我们都知道 Facebook 和 Instagram 展现在他们 App 上的 Stories ,这是介绍StoriesProgressView
的一个库,它可以扩展LinearLayout
和允许你添加以下视图。
该项目包含一个简短但详细的 README 以及示例 App。
链接:
https://github.com/shts/StoriesProgressView
这是一个可以自定义日历的库,它可以提供很多功能和 UI 设置,例如:
改变日历方向;
自定义文本颜色;
设置类型和颜色;
定义导航按钮等;
还有很多其他功能;
链接:
https://github.com/AppliKeySolutions/CosmoCalendar
相信大家都听过 Plaid app,这是由 Shazam 工程团队开发的。
它是 Plaid’s ReflowText 的端口,无论它们的大小或风格怎样,都可以轻松地在同级的 TextView 之间进行转换。
这个库很容易使用,快去试试吧!
链接:
https://github.com/shazam/reflow-animator
这不是一个库,而是由 Nick Butcher 开发的用于试验自适应图标的 AndroidApp。根据 README:
此应用程序可以从已安装的 App 中查找支持自适应图标的 APP,并将其显示在网格中,然后你可以切换不同的蒙版形状以匹配不同设备的显示效果。
目前提供两种视觉效果:
滚动效果;
触摸时的尺寸缩放视差效果。
链接:
https://github.com/nickbutcher/AdaptiveIconPlayground
Tivi 是跟踪电视节目的 App,它与 Track.tv 相连接,它的开发者是 Chris Banes,虽然这项开发工作仍在进行中,但它使用的都是最前沿的组件、库和工具,其中包括 Kotlin、RxJava 2、所有架构组件(Room,LiveData 和 Lifecycle-components)。
链接:
https://github.com/chrisbanes/tivi
这是 Espresso 的IdlingResource
,它的开发者是 Square Engineering,它支持 RxJava 1 和 RxJava 2。
祝你用得愉快!
链接:
https://github.com/square/RxIdler
这是一个丰富的文本编辑器(基于 summernote)。它支持多种功能,包括粗体、斜体、下划线、快捷键、标题(包括六级标题)、段落、引用,有(无)序列表、代码、水平规则、链接、图像,对齐方式(居中、两端对齐、左对齐、右对齐)、下标、上标、字体名称和大小、缩进、减少缩进、撤消 / 还原。
在这种情况下,你需要仔细观察示例 App,因为它几乎没有文档供你参考。
链接:
https://github.com/Even201314/MRichEditor
这是由Buffer 团队和 Joe Birch 开发的示例 App 展示了一种 Android 应用程序的干净架构。
创建此样板的原因:
实验模块化;
分享一些干净架构实现方式;
一开始采用干净架构能应对未来复杂的项目需求。
该项目的 UI 和单元测试都是用 Kotlin 编写。
它的文档里有详尽的介绍,非常适合想学习的开发者,力荐!
链接:
https://github.com/bufferapp/android-clean-architecture-boilerplate
使用过 RxJava 会发现有时很难读取异常,很难在 Rx 流中定位到问题。这就是为什么这个库被创建的原因。你可以在 README 中阅读更多关于的内容。
这个库的功能有:
生成堆栈轨迹
过滤堆栈轨迹
链接:
https://github.com/akaita/RxJava2Debug
Resizer 是一个轻量级的,是易于使用的 Android 库,用于图像缩放。它允许你将图像文件放大或缩小的同时,保持宽高比。
这个项目的灵感来自于 Compressor。
说明书:
Minimum SDK: API 21 默认设置: targetLength: 1080 quality: 80 outputFormat: JPEG outputDirPath: the external files directory of your app 支持的输入格式: BMP GIF JPEG PNG WEBP 支持的输出格式 JPEG PNG WEBP 支持的图像质量范围:0~100 值越大,图像质量越好同时图片越大 PNG,无损格式,会忽略该设置
链接:
https://github.com/hkk595/Resizer
该库允许你在相机里预览图片时,实时检测人脸。它与 Fotoapparat 库非常相似,但它也支持其他相机库和源。
它的使用过程十分简单,而且项目记录相当详细。
链接:
https://github.com/Fotoapparat/FaceDetector
它的开发者是 Florent Champigny,它很容易发现我们各自的定位。它兼容 RxJava2,它还自动申请 GPS 的运行权限,并查看当下的服务是否适合你。
链接:
https://github.com/florent37/RxGps
MapMe 是一个搭配地图功能使用的 Android 库。MapMe 将适配器模式带到 Maps,简化了标记和注释的管理。
MapMe 与 Google Maps 和 Mapbox 配合使用,README 里的内容很详细,而且它是用 Kotlin 编写的。
链接:
https://github.com/TradeMe/MapMe
该库用于颜色渐变管理。
您可以用 Java 或 Kotlin 编写它,项目附带的说明文档很简短,但足够你能够使用它。
链接:
https://github.com/revely-inc/co.revely.gradient
这是一个用 Kotlin 编写的库,它有助于从代码中消除样板。目前它的功能有:
RecyclerUtils—— 省去设置适配器的麻烦,现在只需 4 行代码就可以设置好适配器。
ScrollUtils—— 使用 RecyclerView 或 NestedScrollView 时,可以轻松隐藏 / 滚动显示 FloateActionButton。
ToastUtils—— 用于创建 toasts。
SPUtils—— 用于共享选项的简单 DSL。
ValidatorUtils—— 可以快速而轻易地进行文本检验。
LogUtils—— 简单易用的 Android 日志记录。
链接:
https://github.com/gurleensethi/LiteUtilities
KOIN 是一个使用 Kotlin 来编写的依赖注入框架,它的功能是能够推动做事的进度。
据作者介绍,它
没有代理 / CGLib
没有代码生成
没有内省
它的说明文档写得很棒,有示例和 wiki,还有联系方式。
链接:
https://github.com/Ekito/koin
是那些总试图让自己的安全系统更加顺畅的 Kotlin 极简主义者的理想选择。
作者给出的理由是:
由于具有空值安全特性,Kotlin 不需要
可选值类型
。但是有 RxJava2 这样的 APIs 和库不接受空值导致 Kotlin 仍然需要支持可选值类型
。大多数情况下可以使用
sealed class
来表示空值,然而像向 Rx 流传递String?
这种情况可选值
类型是更好的选择。链接:
https://github.com/gojuno/koptional
这是一个模拟 Apple TV 视差图标的库。
它的README写得非常好,值得一试。
链接:
https://github.com/imablanco/Parallax
Droid-vizu 旨在通过轻松交换渲染器来获得酷炫效果,从而提供定制的可视化效果。
链接:
https://github.com/wotomas/droid-vizu
这不是 Android 库,而是由 CésarFerreira 提供的库的管理者。它是由于对 java 社区的嫉妒,因为他们的快速可靠的依赖管理器。因此,您只需执行以下操作:谷歌搜索一个库,检查,阅读文档等。
drone add creator/library module
例如:
drone add jakewharton/butterknife
链接:https://github.com/cesarferreira/drone
这是一个涵盖在 Android 上创建整洁 UI 的项目。这一次,SaúlMolinero 涵盖的内容包括:
使用 Alex Lockwood 的 ShapeShifter 工具
AndroidVectorDrawables
ScaleDrawables
自适应图标等。
链接:
https://github.com/cesarferreira/drone
30.Reagent
Reagent 是 Jake Wharton 总结的未来响应式库的体验。请不要使用。
链接:
https://github.com/JakeWharton/Reagent
Google 如何用 AI 造聊天机器人?Pinterest 如何用机器学习获得两亿活跃用户?10 月 QCon 上海站,还有来自 Uber、Paypal、LinkedIn、Airbnb 等顶尖技术专家前来分享前沿实践经验。
QCon 报名即将结束,识别下方二维码或点击 【阅读原文】 与 100+ 国内外技术大咖零距离,如有问题欢迎联系票务经理 Hanna ,电话:15110019061,微信:qcon-0410。