自定义View实战
每看到一个好看的View就会忍不住的想要去绘制它
许英俊潇洒
原昵称Hensen_
展开
-
Android自定义View——贝塞尔曲线实现抛物线效果
效果展示原理分析抛物线效果最主要的难点和原理在于贝塞尔曲线动画的生成,我们通过图片主要讲解贝塞尔曲线动画,这里用到的是二级贝塞尔曲线1、需要找到贝塞尔曲线的三个点,开启点、结束点、控制点2、通过二级贝塞尔曲线的公式计算,获取贝塞尔曲线的轨迹路径点3、通过设置点赞图片X,Y坐标,从而形成点赞的效果实现步骤1、初始化变量class Bezier2Layout : RelativeL...原创 2019-07-31 17:23:59 · 1989 阅读 · 0 评论 -
Android自定义View——自定义插值器和估值器实现向上抛体运动
效果图原理分析其实代码很简单,主要的知识点就是执行动画是如何配合插值器和估值器的运算,达到我们想要的效果。这里的向上抛体运动和自由落体运动主要是运用了高中的加速度运算的公式,计算其x轴和y轴的路程和速度即可,通过插值器计算时间和估值器计算位移,达到向上抛体效果。插值器:用0-t,来表示时间的递增估值器:用公式计算出动画的路程当前速度:v = v0 - gt向上抛体运动:s = v0...原创 2019-07-23 23:17:18 · 800 阅读 · 0 评论 -
Android自定义View——拼手气转盘
效果图原理分析这里的转盘主要实现的重点是绘制每块答案区域的文本,并绘制出来,而转盘和背景只是张图片1、绘制文本的位置区域 2、获取旋转动画 3、提供接口实现步骤1、初始化变量//文本相关private List<String> mRollGameTextList;private int mRollGameTextCount = 0;priv...原创 2018-02-08 10:46:18 · 2173 阅读 · 0 评论 -
Android自定义View——贝塞尔曲线实现直播点赞效果
效果展示原理分析点赞效果最主要的难点和原理在于贝塞尔曲线动画的生成,我们通过图片主要讲解贝塞尔曲线动画1、需要找到贝塞尔曲线的四个点 2、通过三级贝塞尔曲线的公式计算,获取贝塞尔曲线的轨迹路径点 3、通过设置点赞图片X,Y坐标,从而形成点赞的效果实现步骤1、初始化变量//1、继承RelativeLayoutpublic class ChristmasView extends RelativeL原创 2017-12-28 12:24:53 · 3479 阅读 · 7 评论 -
Android自定义View——贝塞尔曲线实现水波纹进度球
效果演示实现原理想要了解基础的水波纹实现效果,可以在博客的自定义View专题找到,其实现原理如下利用贝塞尔曲线绘制屏幕外和屏幕内的sin曲线利用path将sin曲线的左下角和右下角连接起来成为一块区域通过不断的平移sin曲线,然后平移完一个周期则重新回到原点实现过程绘制实现的步骤如下裁剪画布为圆形绘制圆形边框绘制波浪区域绘制进度文字自动增长进度前提准备我们创建一个View继承自V原创 2017-10-29 11:10:19 · 4298 阅读 · 2 评论 -
Android自定义View——贝塞尔曲线实现水波纹效果
Android自定义View——贝塞尔曲线实现水波纹效果 本篇文章包含以下内容: 简单介绍 原理分析 实现步骤 简单介绍效果图展示贝塞尔曲线该View涉及到Path类的运用,如果对Path类不熟悉的,可以看http://blog.sina.com.cn/s/blog_4d9c3fec0102vyhs.html,这篇文章通熟易懂我们使用到的是Path类的quadTo(原创 2016-11-09 13:24:07 · 9373 阅读 · 6 评论 -
Android自定义View——简单实现边缘凹凸电子票效果
自定义View简单实现边缘凹凸卡片效果效果一:项目思路:查看效果图,该View继承LinearLayout,可以发现在View的上下边缘为圆心,画出的白色圆形即可。这里只要计算出圆的个数和其循环的规律即可,下面请看分析:步骤一:分析实现的过程通过分析图:我们取卡片的前2个凹凸来看,将其分为四部分,并且两部分为循环可得到另两部分,其中我们只原创 2016-08-29 20:12:27 · 6285 阅读 · 8 评论 -
Android自定义View——多边形网格属性图
http://blog.sina.com.cn/s/blog_4d9c3fec0102vyhs.html原创 2016-09-04 22:55:04 · 8138 阅读 · 7 评论 -
Android自定义View——实现字母导航栏
实现字母导航栏思路分析:1、自定义View实现字母导航栏2、ListView实现联系人列表3、字母导航栏滑动事件处理4、字母导航栏与中间字母的联动5、字母导航栏与ListView的联动效果图:首先,我们先甩出主布局文件,方便后面代码的说明<LinearLayout原创 2016-09-27 21:29:47 · 4310 阅读 · 3 评论 -
Android自定义View——仿1号店垂直滚动广告条实现
仿1号店垂直滚动广告条实现效果图展示,图片有点卡,耐心看会,原程序是很流畅的实现步骤: 声明变量 初始化画笔、文本大小和坐标 onMeasure()适配wrap_content的宽高 onDraw()画出根据坐标画出两段Text 监听点击事件 在Activity中实现点击事件 实现原理(坐标变换原理):整个过程都是基于坐标Y的增加和交换进行处理的,Y值都会一直增加原创 2016-10-11 22:57:06 · 5348 阅读 · 3 评论 -
Android自定义View——刮刮卡效果
刮刮卡效果 效果图: 想要红包的实现效果的可以关注我的博客仿饿了么红包实现原理: 下层为我们的红包图片 上层为我们灰色的颜色 使用滑动监听,滑动时,用透明度为0的画笔画出透明和上层图片灰色的交集 监听我们滑动的距离是否达到标准,达到后使用子线程自动展开剩余的灰色 实现步骤: 初始化画笔 初始化顶层图片和底层图片 监听滑动事件,判断是否滑完原创 2016-10-11 14:48:59 · 2756 阅读 · 3 评论 -
Android自定义View——QQ音乐中圆形旋转碟子
QQ音乐中圆形旋转碟子思路分析:1、在onMeasure中测量整个View的宽和高后,设置宽高2、获取我们res的图片资源后,在ondraw方法中进行绘制圆形图片3、通过Handler发送Runnable来启动旋转线程4、在布局中使用我们的View效果图:贴出我们的变量信息:原创 2016-09-29 00:37:15 · 7489 阅读 · 11 评论 -
Android自定义View——折线统计图
折线统计图事先说明:该View涉及到Path类的运用,如果对Path类不熟悉的,可以看http://blog.sina.com.cn/s/blog_4d9c3fec0102vyhs.html,这篇文章通熟易懂如果你学习过我上篇网格属性图的同学,看到这个属性图,可以自己先动手试一下目前,我还不会使用onMeasure这个方法的三种模式来控制该View的宽高原创 2016-09-06 19:19:52 · 4869 阅读 · 1 评论 -
Android自定义View——彩色圆环统计图
彩色圆环统计图事先说明:如果对View的绘制不熟悉的话,可以先查阅资料绘制简单的几何图形,再来阅读本篇文章如果是对View刚入门的,可以先从我最简单的View学起:简单实现边缘凹凸电子票效果更多有趣的View尽在我的CSDN博客:http://blog.csdn.net/qq_30379689效果图:步骤一:分析变原创 2016-09-15 16:16:57 · 6414 阅读 · 7 评论 -
Android自定义View——仿滴滴出行十大司机评选活动说明
仿滴滴出行十大司机评选活动说明前言:最近在使用滴滴出行的时候发现了一个有意思的View界面,看到心动的View就会想着动手去画一遍,本篇只是大概的模仿一下自定义的View的画法,如果有更好的方法,请大神指导留言。事先说明:该View涉及到Path类的运用,如果对Path类不熟悉的,可以看http://blog.sina.com.cn/原创 2016-09-15 22:56:25 · 4165 阅读 · 1 评论 -
Android自定义View——自定义ViewPager
手把手教你制作自定义ViewPager事先说明:本篇文章会介绍:自定义ViewPager的创建,处理滑动监听,处理滑动冲突,增加ViewPager的指示器等文章也会涉及到手势识别器和Scroller滑动的介绍,详细可以查询相关文章基础概念:常见的滑动冲突:外部滑动方向和内部滑动方向不一致、外部滑动方向和内部滑动方向一致。我们自定义的ViewPager如果在其中一页中原创 2016-08-26 23:03:38 · 9179 阅读 · 3 评论