-
雕虫晓技(三) 通用圆角布局全解析
关于作者GcsSloop,一名 2.5 次元魔法师。微博 | GitHub | 博客1. 前言之前,我在 GitHub 分享了一个开源库:rclayout,这个库的主要目的是快速实现 Android中 的圆角需求,例如这样的效果。分享这个库的时候只是觉得可能有用而已,但没有想到居然有了 800 多个 Star,看来有不少人像我一样,对圆角这一需求比较苦恼。圆角算是一种比较常见的需求了,最常应用于图片,因此可以找到大量的自定义圆角 ImageView,不仅如此,一些比较流行的图片加载框架也都对圆角进行了支持,像...…
-
雕虫晓技(二) 编码
关于作者GcsSloop,一名 2.5 次元魔法师。微博 | GitHub | 博客前言对于编程,一般需要先设计,再编码,即针对某一项功能进行详细的分析后,得出具体的技术方案,然后编码进行实现,这是最理想的状态,但是现实不可能这么理想。在公司的项目中,一般不会有太充裕的时间,专一用来琢磨技术方案,再加上个人能力有限,前期分析很难具体到每一个细节中,那么在这种情况下应该如何编程呢?下面就分享几个自己使用的准则。一、功能优先程序员主要工作是写代码,最终目标则是产品,而产品的核心是其中的功能,如果功能没有完成,代码...…
-
雕虫晓技(一) 组件化
关于作者GcsSloop,一名 2.5 次元魔法师。微博 | GitHub | 博客前言本文是我工作这段时间的部分经验总结,仅从个人的角度谈一下对工作中编程的看法。今年毕业出来工作,前期需要学习和实践的东西有很多,生活的节奏也在进行调节,因此就没有太多的精力去写文章了,从而导致我的“Android自定义View”系列文章一直处于停更状态。其实并非没有时间,而是没有太多的精力投入到这上面,对于技术文章来说,如果想要写的通俗易懂,不误导读者,不仅需要对其中运用到的各个技术细节都进行考证,而且要花费大量的精力去梳理...…
-
PagerLayoutManager(分页布局)
具有分页功能的 Recyclerview 布局管理器,主打分页,可以替代部分场景下的网格布局,线性布局,以及一些简单的ViewPager,但也有一定的局限性,请选择性使用。 网格分页布局源码解析(上) 网格分页布局源码解析(下)1. 效果预览 2. 支持的特性 网格布局,设置合适的行列数可以模拟线性布局或者ViewPager。 分页效果,支持自动回调页码的变化(总页数和当前页数)。 布局方向,支持横向滚动和垂直滚动。 方向切换,支持切换滚动方向。 支持电视,支持TV上按键翻页。 内存稳定,不...…
-
RCLayout(圆角布局)
Android 通用圆角布局,快速实现圆角需求。之前做项目的时候有圆角相关需求,在网上找了很多方案都不够满意,于是自己做了一个,目前已经使用了一段时间,更新了多个版本,我遇到的问题都进行了修复,并且添加了很多方便的可配置属性,以满足不同需求。【GitHub · 源代码】效果预览 支持的特性 包裹任意组件。 设置圆角大小。 分别对每一个角设置圆角大小。 设置描边宽度。 设置描边颜色。 圆形。 支持Padding。 圆角抗锯齿。 内容可点击区域即为显示区域。 是否剪裁自身背景。主要文件 ...…
-
Encrypt(加密工具包)
Android 加密解密工具包,字符串,byte[],文件等对象的加密和解密工具集合,包含了多种加密方案,例如:编码工具(Base64Util),信息摘要工具(MD5Util、SHAUtil),对称加密工具(AESUtil、DESUtil),非对称加密工具(RSAUtil)。其中所有的工具都经过了测试,如果发现有什么问题,可以到 【GitHub · Encrypt】 提交Issues。 加密类型 摘要 相关方法 简单加密 换...…
-
安卓自定义View进阶-手势检测(GestureDetector)
Android 手势检测,主要是 GestureDetector 相关内容的用法和注意事项,本文依旧属于事件处理这一体系,部分内容会涉及到之前文章提及过的知识点,如果你没看过之前的文章,可以到 自定义 View 系列 来查看这些内容。在开发 Android 手机应用过程中,可能需要对一些手势作出响应,如:单击、双击、长按、滑动、缩放等。这些都是很常用的手势。就拿最简单的双击来说吧,假如我们需要判断一个控件是否被双击(即在较短的时间内快速的点击两次),似乎是一个很容易的任务,但仔细考虑起来,要处理的细节问题也有...…
-
安卓自定义View进阶-多点触控详解
Android 多点触控详解,在前面的几篇文章中我们大致了解了 Android 中的事件处理流程和一些简单的处理方案,本次带大家了解 Android 多点触控相关的一些知识。多点触控 ( Multitouch,也称 Multi-touch ),即同时接受屏幕上多个点的人机交互操作,多点触控是从 Android 2.0 开始引入的功能,在 Android 2.2 时对这一部分进行了重新设计。在本文开始之前,先回顾一下 MotionEvent详解 中提到过的内容: Android 将所有的事件都封装进了 Mot...…
-
Markdown实用技巧-编辑器(Typora)
本次的安利对象是一个 Markdown 编辑器,是会长1见过的最简单,最优雅的编辑器,先来看一下它的界面吧:它的界面非常简单,有多种主题可选,更重要的是它的预览界面和编辑界面是一体的,而不像其他编辑器那样是左右分开的。从上面的示例中可以看出,其输入模式支持多种,不论是手动输入语法还是使用快捷键,都非常的流畅,实时看到效果变化,除此之外 Typora 还有很多优点。Typora 的优点 预览和编辑界面一体。 强大的快捷键。 兼容常见扩展语法。 兼容 HTML (新版进行了完善)。 支持 YAML 格式...…
-
程序员练级指北
之前非常有幸收到 脉脉不得语 的邀请参加 郑州GDG1 举办的 DevFest2 活动,并上台分享了一下自己的拙见,回来之后我将自己演讲的内容整理了一下,并分享给大家,希望对一些人有帮助,关于 郑州GDG 更多的活动内容,大家可以到 GDGZhengzou 查看。另外,欢迎关注我的 GitHub 和 微博 。我在本次活动中的演讲主题是《程序员练级指北》,主要内容如何从零开始,并逐渐成长为一名合格的程序员,里面的内容是基于自身的经历和见解所书写的,并不一定适合所有人,建议选择性采纳。为了演讲不那么枯燥乏味,我...…