Csming

虽千万人吾往矣

Android自定义View——事件分发机制学习笔记

为什么有事件分发机制 因为Android的View是树状结构的;View可能会重叠在一起; 当我们点击的地方有很多歌View都可以响应时,就很尴尬了; 于是事件分发机制就用来解决这种问题 如图,View是一层一层嵌套的;当点击View1时,下面的ViewGroupA、RootView等也能够响应;为了确定到底要由哪个View处理盖点击事件,就需要事件分发机制来处理了;** (......

Android自定义View——Matrix学习笔记

Matrix是什么 Matrix是一个矩阵,用于坐标映射,数制转换 可以运用于View、图片、动画效果等各个方面 画布操作是对Matrix的封装;Matrix更接近底层 基本原理 最根本的作用就是坐标转换 (这涉及到了图形学的知识) 我们所用到的变换均属于仿射变换,仿射变换是 线性变换(缩放,旋转,错切) 和 平移变换(平移) 的复合; **基本变换有4种: **平移(transl......

Android自定义View——PathMeasure学(A)习(P)笔(I)记(jilu)

PathMeasure是什么 PathMeasure是用来测量Path类的 API: 方法名 用处 PathMeasure() 创建一个空的PathMeasure PathMeasure(Path path,boolean forceClosed) 创建 PathMeasure 并关联一个指定的Path(Path需要已经创建完成)。 void setPath(Path ......

Linux的常用命令记录

**复制:**cp -v 源文件路径 目标文件路径 **移动:**mv -v 源文件路径 目标文件路径 **删除:**rm -v 文件路径 rmdir -v 文件夹路径–文件夹要为空 rm -rv 文件夹路径–递归删除文件夹及其子文件 **创建文件夹:**mkdir -v 文件夹名字(在当前目录创建文件夹) **创建文件:**touch 文件路径(创建一个空文件) **显示当......

JVM学习——gc回收机制

最近复习Java基础细节的时候看Thking in Java;书上有提到两种垃圾回收机制,“停止-复制”、“标记-清扫”; **停止-复制:**将暂停程序的运行,然后将所有存活的对象从当前堆复制到另一个堆,而没有被复制的对象都是垃圾;当对象被复制到新堆时,它们是一个挨着一个的,所以新堆保持紧凑排列;然后就可以直接分配新空间了 **标记-清扫:**从堆栈和静态存储区出发,遍历所有的......

JVM学习——堆和栈的区别

在学习JVM运行机制的时候,运行时数据内存分为堆内存和栈内存;记得看Thking in Java时,曾看到过,栈内存存放的是基本类型的变量和对象的引用;而堆内存存放的则是对象; 堆内存 作用是用于存储Java中的对象和数组,当我们new一个对象或者创建一个数组的时候,就会在堆内存中开辟一段空间给它,用于存放 堆内存的特点 1.堆可以看做队列,先进先出,后进后出 2.堆可以动态分配内存大小......

JVM学习——Native方法

在学习JVM运行机制的时候,发现本地方法区是用于执行Native方法的;故有此疑问,什么是Native方法呢? 什么是Native方法 一个Native Method就是一个java调用非java代码的接口(NDK也跟这有关吗?(疑问) 一个Native Method由非java语言实现 在定义一个native method时,并不提供实现体(有些像定义一个java interface......

JVM学习——运行机制原理

最近学习了ClassLoader;进而开始学习Java虚拟机的相关知识,进而深入理解Java的原理 什么是JVM JVM——Java虚拟机 JVM是可运行Java代码的虚拟计算机;JVM包括一套字节码指令集、一组寄存器、一个栈、一个垃圾回收堆和一个存储方法域; JVM Java源文件通过编译器能够生产相应的.class文件(字节码文件);而字节码文件又通过Java虚拟机中的解释器(字......

Android自定义View——贝塞尔曲线学习笔记

贝塞尔曲线 贝塞尔曲线奠定了计算机绘图的基础(它可以将任何复杂的图形用精确的数学语言进行描述) 有开放和封闭路径的区别; 理解贝塞尔曲线的原理 贝塞尔曲线是由一系列点来控制曲线状态的 **数据点:**确定曲线的起始和结束位置 **控制点:**确定曲线的弯曲程度 一阶曲线 一阶曲线是没有控制点的,仅有两个数据点(A 和 B),最终效果一个线段;类似于lineTo; 生成过程: 二阶曲线 ......

Android自定义View——Path操作学习笔记

Path简介 Path封装了直线曲线构成的几何路径; 可以利用Canvas的drawPath绘制;也可以用于剪裁画布,根据路径绘制文字;也可以用于描述一个图像的轮廓; 有开放和封闭路径的区别; Paht常用方法 **移动起点moveTo:**移动下一次操作的起点位置 **设置终点setLastPoint:**重置当前path中最后一个点位置,如果在绘制之前调用,效果和moveTo相同 **......