
自定义View(新)
黑色之路
每个人都依靠自己的知识和认识,却又被之所束缚,还将这些称之为现实。但知识和认识是非常暧昧的东西,那个现实也许只不过是镜中花水中月。人们都生活在自我意识之中,你不这么认为吗?
展开
-
摘要:HenCoder Android 开发进阶: 自定义 View 1-1 绘制基础
http://hencoder.com/ui-1-1/,非常感谢抛物线的分享文章,本系列主要按作者阅读习惯进行知识摘要,喜欢多图的同学可移步上面的原作地址。//分三大部分:绘制 布局 触摸返回 //自定义绘制:重写绘制方法,最常用的onDraw()。绘制的关键Canvas的使用:1.drawXXX()2范围裁切,几何变换,遮盖关系 //1.1Canvas 的 drawXXX()画圆、画方、...转载 2018-05-07 15:46:47 · 262 阅读 · 0 评论 -
摘要:HenCoder Android UI 部分 2-3 定制 Layout 的内部布局
这期是 HenCoder 布局部分的最后一期:重写 onMeasure() 和 onLayout() 来定制 Layout 的内部布局。 简介这期虽然距离上期的时间比较久,但主要是我的个人原因,而不是因为这期的内容难。这期的内容还是比较简单的,主要是一些概念和原理上的东西,实操方面非常容易,所以和上期一样,主要把视频看看就差不多啦: 如果看不到视频,可以点 这里 直接去 B 站看;如果你在海外,转载 2018-05-07 16:00:16 · 188 阅读 · 0 评论 -
摘要:HenCoder Android UI 部分 2-2 全新定义 View 的尺寸
这期是 HenCoder 布局部分的第二期:重写 onMeasure() 来全新定制自定义 View 的尺寸。 简介这期虽然距离上期的时间比较久,但主要是我的个人原因,而不是因为这期的内容难。这期的内容还是比较简单的,主要是一些概念和原理上的东西,实操方面非常容易,所以和上期一样,主要把视频看看就差不多啦: 在页面里看不到视频的,可以点击 这里 去 B 站看;在海外看得卡的,可以点击 这里 去转载 2018-05-07 15:59:57 · 144 阅读 · 0 评论 -
摘要:HenCoder Android UI 部分 2-1 布局基础
HenCoder 的第二季:自定义 View 第二部分——布局过程的自定义,从这期正式开始了。好像有点小激动。 废话少说,直入正题。 简介之前我说过,自定义 View 最关键的有三个点:绘制、布局和触摸反馈。上一季讲过的绘制,内容虽然多(好像讲了 8 期?),但难度上其实是最简单的。而布局就和它相反,布局过程的技术知识,内容比较少(应该 3 期就能讲完),但你先要理解它的内部工作原理才能正确理解转载 2018-05-07 15:59:39 · 180 阅读 · 0 评论 -
摘要:HenCoder Android 自定义 View 1-8 硬件加速
硬件加速这个词每当被提及,很多人都会感兴趣。这个词给大部分人的概念大致有两个:快速、不稳定。对很多人来说,硬件加速似乎是一个只可远观而不可亵玩的高端科技:是,我听说它很牛逼,但我不敢「乱」用,因为我怕 hold 不住。 今天我试着就把硬件加速的外衣脱掉(并没有),聊一聊它的原理和应用: 1. 硬件加速的本质和原理; 2. 硬件加速在 Android 中的应用; 3. 硬件加速在 Androi转载 2018-05-07 15:59:17 · 184 阅读 · 0 评论 -
摘要:HenCoder Android 自定义 View 1-7:属性动画 Property Animation(进阶篇)
上期的内容,对于大多数简单的属性动画场景已经够用了。这期的内容主要针对两个方面: 1. 针对特殊类型的属性来做属性动画; 2. 针对复杂的属性关系来做属性动画。 TypeEvaluator关于 ObjectAnimator,上期讲到可以用 ofInt() 来做整数的属性动画和用 ofFloat() 来做小数的属性动画。这两种属性类型是属性动画最常用的两种,不过在实际的开发中,可以做属性动画的类转载 2018-05-07 15:58:55 · 153 阅读 · 0 评论 -
摘要:HenCoder Android 自定义 View 1-6:属性动画 Property Animation(上手篇)
Android 里动画是有一些分类的:动画可以分为两类:Animation 和 Transition; 其中 Animation 又可以再分为 View Animation 和 Property Animation 两类: View Animation 是纯粹基于 framework 的绘制转变,比较简单,如果你有兴趣的话可以上网搜一下它的用法; Property Animation,属性动画转载 2018-05-07 15:58:34 · 227 阅读 · 0 评论 -
摘要:HenCoder Android 开发进阶:自定义 View 1-5 绘制顺序
前面几期讲的是「术」,是「用哪些 API 可以绘制什么内容」。 接下来要讲的是「道」,是「怎么去安排这些绘制」。这期是「道」的第一期:绘制顺序。1 super.onDraw() 前 or 后? 前几期我写的自定义绘制,全都是直接继承 View 类,然后重写它的 onDraw() 方法,把绘制代码写在里面,就像这样:public class AppView extends View { …转载 2018-05-07 15:58:05 · 187 阅读 · 0 评论 -
摘要:HenCoder Android 开发进阶:自定义 View 1-4 Canvas 对绘制的辅助 clipXXX() 和 Matrix
1 范围裁切 范围裁切有两个方法: clipRect() 和 clipPath()。 裁切方法之后的绘制代码,都会被限制在裁切范围内。1.1 clipRect() 使用很简单,直接应用: canvas.clipRect(left, top, right, bottom); canvas.drawBitmap(bitmap, x, y, paint);记得要加上 Canvas.save()转载 2018-05-07 15:57:27 · 287 阅读 · 0 评论 -
摘要:HenCoder Android 开发进阶:自定义 View 1-3 drawText() 文字的绘制
文字的绘制所能控制的内容太多太细,做到全部理解,知道都有什么东西,大概怎么用就好1Canvas 绘制文字的方式Canvas 的文字绘制方法有三个:drawText() drawTextRun() 和 drawTextOnPath()。1.1drawText(String text, floatx, floaty,Paint paint转载 2018-05-07 15:51:30 · 273 阅读 · 0 评论 -
摘要:HenCoder Android 开发进阶: 自定义 View 1-2 Paint 详解
内容是更为专项的,不必把所有东西都完全记住,而是只要把内容理解了就好。这期的内容,只要做到「知道有这么个东西」, 在需要用到的时候能想起来这个功能能不能做、大致用什么做就好,至于具体的实现,到时候拐回来再翻一次就行了。 Paint 的 API 大致可以分为 4 类: 颜色 效果 drawText() 相关 初始化1 颜色 Canvas 绘制的内容,有三层对颜色的处理:1.1 基本颜...转载 2018-05-07 15:49:44 · 237 阅读 · 0 评论 -
随笔(四十三)
Java 反射修改 final 属性值https://blog.youkuaiyun.com/tabactivity/article/details/50726353https://blog.youkuaiyun.com/kypfos/article/details/77678355https://yanbin.blog/java-reflection-modify-final-field/#more-823...原创 2019-06-03 10:43:57 · 149 阅读 · 0 评论