摘要: 今天来分析下属性动画的源码,首先从ObjectAnimator的ofFloat方法出发 ObjectAnimator oa = ObjectAnimator.ofFloat(iv, "translationY", 0f,1000f); public static ObjectAnimator ofF 阅读全文
posted @ 2020-02-17 10:43 aruba_233 阅读(59) 评论(0) 推荐(0)
摘要: 安卓中动画分成两类 一种是传统动画,如:补间动画,帧动画,其本质是canvas的矩阵变换 另一种是属性动画,由谷歌从Android3.0以后推出 传统动画仅仅是视觉效果,并不会实际改变view的属性,比如:平移动画不会改变view的原来坐标,如果需要点击view还是要点击原来的位置。而属性动画不同, 阅读全文
posted @ 2020-02-13 10:52 aruba_233 阅读(24) 评论(0) 推荐(0)
摘要: ListView是谷歌官方的一个自定义组件,用于列表展示,其中最重要的是Adapter设配器,设配器模式的设计为它带来了极大的性能提升,一方面,内存中只有我们看的到的ItemView被创建(对比ScrollView:有多少子控件就内存中创建多少子控件),另一方面,对ItemView缓存,以便滑动时复 阅读全文
posted @ 2020-02-10 16:18 aruba_233 阅读(23) 评论(0) 推荐(0)
摘要: 上次说到View的事件方法,并查看了源码,今天我们更加深入源码,了解事件分发的前世今生 以前分析Activity启动流程时,我们知道Activity是由PhoneWindow,DecorView,我们xml中写的布局、控件等组成,很显然事件分发首先被接受到的是Activity,果然在Activity 阅读全文
posted @ 2020-02-08 22:32 aruba_233 阅读(29) 评论(0) 推荐(0)
摘要: 在安卓中如果我们需要点击一个控件,并做处理的话,首先想到的就是setOnClickListener方法和setOnTouchListener方法,而在自定义控件中,需要自己处理触摸事件的话,我们需要改写onTouchEvent方法。这些方法的执行顺序和怎么被调用的,就是今天的研究课题 首先自定义一个 阅读全文
posted @ 2020-02-08 16:37 aruba_233 阅读(18) 评论(0) 推荐(0)
摘要: 效果如下: MapView.gif 首先我们需要一张svg的中国地图图片 svg目录.jpg 在浏览器打开.jpg 第一步:将svg转换为安卓中的vector(利用插件或网站http://inloop.github.io/svg2android/) 第二步,自定义View解析xml,将所有Path标 阅读全文
posted @ 2020-02-07 16:46 aruba_233 阅读(192) 评论(0) 推荐(0)
摘要: 上次说了SVG在安卓中的应用,在我们安卓系统中SVG就是Vector Drawable,Vector除了显示SVG图片外,还可以做动画效果,效果如下: animated-vector.gif 首先我们需要一张vector图片 创建vector.jpg 在xml中为如下: <vector xmlns: 阅读全文
posted @ 2020-02-06 16:43 aruba_233 阅读(61) 评论(0) 推荐(0)
摘要: SVG,即Scalable Vector Graphics 可伸缩矢量图形,这种图像格式在前端中已经使用的非常广泛了 SVG图片相对于一般的图片(png、jpg等),拥有占用体积小,支持等比例缩放不失真,性能高等优势,谷歌在Android5.0引进了SVG,并转化为Vector,在Android中指 阅读全文
posted @ 2020-02-06 15:13 aruba_233 阅读(60) 评论(0) 推荐(0)
摘要: SearchAnimeView2.gif 核心思路:利用PathMeasure,不断截取片段来画到canvas上 /** * 搜索动画效果2 */ public class SearchAnimView2 extends View { private Paint mPaint = new Paint 阅读全文
posted @ 2020-02-05 15:14 aruba_233 阅读(35) 评论(0) 推荐(0)
摘要: PathMeasure是一个用来测量Path的类 构造方法 //创建一个空的PathMeasure public PathMeasure() //创建 PathMeasure 并关联一个指定的Path(Path需要已经创建完成)。 public PathMeasure(Path path, bool 阅读全文
posted @ 2020-02-04 16:38 aruba_233 阅读(19) 评论(0) 推荐(0)