两句话的启发:
1.总不能每次写动画都要百度一下吧!
2.如果仅仅去学习如何使用Android提供的API,或者去网上寻找现成的解决办法,那么即使再熟练,也还是一个低级的层次.
第一次步入安卓进阶的学习,最能区分安卓初级工程师和中级工程师的方式就是自定义view,今天开始尝试了,果然很难,不过很有动力.
注:自定义流光Button,还是很炫酷的.毕竟是自己亲手写的view
几个难点和重点,加上流程:
1.Paint_shader渲染器,通过LinearGradient的不断变化来实现,让带有该属性的Paint来绘制Button
2.OnsizeChanged方法初始化Paint.
3.根据view的宽度设置一个LinearGrandient.
4.Paint设置原生的Button没有的LinearGradient属性
5.通过Matrix设置settranslate实现属性.
6.LinearGrandient加载Matrix,刷新控件.
流程大致是这样,下面就是代码.
import android.content.Context;
import android.graphics.Canvas;
import android.graphics.Color;
import android.graphics.LinearGradient;
import android.graphics.Matrix;
import android.graphics.Paint;