
Android自定义控件
文章平均质量分 80
十 月
人生如梦
展开
-
Android自定义View(三) Matrix的原理解析
Matrix的中文是矩阵的意思,在Android中它起着坐标映射、变换的功能。意思就是说我们在自定义view的时候,有时需要对图表进行缩放、旋转、转移、错切等操作,就需要对图表的坐标进行一定的转换,此时就是Matrix在后台起着转换的作用。Matrix是一个3x3的矩阵,大概长成下面那样子,如图:先举个例子,为什么要用Matrix进行坐标转换,比如通过Matrix对点A围绕原点旋转30°,...原创 2018-11-05 03:10:00 · 2630 阅读 · 0 评论 -
Android自定义View(五)Matrix应用详解
上次我们讲到了Matrix的原理,知道了Matrix内部其实就是通过矩阵计算去映射坐标变化的,还有矩阵前乘和后乘的区别等等这篇文章主要讲解Matrix相关方法的使用,先来看一下matrix主要有哪些方法,如下表:方法类别 相关API 摘要 数值操作 set reset setValues getValues 设置、 重置、 设置数值、 获取数值 数值计...原创 2019-01-10 23:20:27 · 1130 阅读 · 0 评论 -
Android自定义View(四)Path之贝塞尔曲线
一、概述1、贝赛尔曲线来源在数学的数值分析领域中,贝赛尔曲线(Bézier曲线)是电脑图形学中相当重要的参数曲线。更高维度的广泛化贝塞尔曲线就称作贝塞尔曲面,其中贝塞尔三角是一种特殊的实例贝塞尔曲线于1962年,由法国工程师皮埃尔·贝塞尔(Pierre Bézier)广泛发表,他运用贝塞尔曲线来为汽车的主体进行设计。贝塞尔曲线最初由Paul de Casteljau于1959年运用de ...原创 2019-01-09 17:33:05 · 4145 阅读 · 1 评论 -
Android自定义View(二)View的事件分发机制
View的事件分发机制是Android中的一个难点,也是非常重要的知识点,充分理解和掌握事件分发机制有助于我们在自定义View的过程中更好地设计和解决事件相关问题。下面我们通过源码的角度去分析一下Android是怎么处理View事件分发的假如我们从Activity这个层面开始接收事件,事件的大致传递顺序是Activity->Window->View,即先从activity的disp...原创 2018-11-04 16:47:48 · 360 阅读 · 0 评论 -
Android自定义View(一)View的测量
在Android中,一个View绘制出来要经过三大流程,分别是measure方法测量View的宽高,layout方法确定View的位置,draw方法最终将View绘制到屏幕上;本文主要讲解view的测量原理,即measure方法的相关源码实现流程对于View的测量行为,我们首先关注ViewGroup的相关测量知识,ViewGroup作为父容器并且子view的大小一般都离不开其父容器的的影响;V...原创 2018-10-23 00:37:26 · 513 阅读 · 1 评论 -
Recylerview网格布局分割线(控件四边也有分割线)
关于RecylerView分割线的问题,当布局形式为线性布局LinearLayoutManager的时候, 官方提供了一个定义好的分割线类DividerItemDecoration,但是当布局形式为网格布局GridLayoutManager的时候,官方没有提供其分割线的实现类,需要自己去实现;网上大多网格布局分割线的实现都是只有item中间分割,控件的四周没有分割线,所以这里我实现一个item四周...原创 2018-10-19 11:16:44 · 1066 阅读 · 0 评论