自定义view笔记
志先生_
一只走向Android不归路的小白
展开
-
自定义View(七)-View的工作原理- Activity的布局加载
前言前面几篇对动画可以说是做了非常全面的总结了(上篇文章最后的4种ViewGroup相关动画相信在了解基础后看些文章也不会太难理解)。在View的工作原理 这一部分我们将对View做全面深入的解析。由于本人是菜鸟,其实无法直接看源码,也都是通过书籍与文章反复阅读,然后才去看的源码。由于怕忘记写成博客。希望和我一样不了解的朋友能在自定义View中不那么迷茫。如果那里有错误大家一定指出我将不胜感激原创 2018-01-03 14:49:32 · 1446 阅读 · 2 评论 -
自定义View(一)-动画- XML生成View动画
前言感觉好久没有写博客了。首先因为最近比较忙,有在学习即时通讯相关的开源项目,好不容易忙完了。有点时间就抓紧写博客。之前学习的开源项目百篮应用已经获得360+star了。当初学习的时候没有觉得什么。虽然不是我自己原创的项目。但是也是自己一点点写出来的,也学习到了很多。所以当初的2个承诺,一个是完善功能另一个写一个学习自定义View系列文章。个人觉得第二个比较重要。因为在理解后如何去完善,是仁者原创 2018-01-02 20:04:48 · 743 阅读 · 0 评论 -
自定义View(九)-View的工作原理- View的layout()和draw()
前言上一节我们将View的测量流程理的差不多了,这篇我们来看下View的剩下的2大流程layout(布局)和draw(绘制)。相对测量来说,布局与绘制就简单了许多,所以我们将这的两大流程放在一起讲解。 performLayout()布局 由上上篇我们知道,布局是从ViewRootImpl#performLayout()发起的,那我们进入这个方法看一下: private void perfor原创 2018-01-03 22:56:59 · 368 阅读 · 0 评论 -
自定义View(八)-View的工作原理- View的measure
前言从上一篇中。同Activity的布局加载了解了整个View树加载的流程。最后是通过View的三大流程来实现布局的显示的。那么我们这篇来讲下布局的三大流程之一–>measure。1.MeasureSpec 在讲解测量之前我们要先清楚什么是MeasureSpec?MeasureSpaec可以理解为测量规格。在View.measure()中多次被用到。它是有一个32位的int值,高2位代表SpecM原创 2018-01-03 14:50:37 · 297 阅读 · 2 评论 -
自定义View(六)-动画- AnimatorSet与XML设置属性动画
介绍AnimatorSet是组合动画,前面在ObjectAnimator.ofPropertyValuesHolder(),时也可以做到控制多个属性做动画,但是.ofPropertyValuesHolder(),仅仅是将多个属性同时做动画却无法灵活控制每个属性的播放顺序,针对的是一个控件,而AnimatorSet是组合动画。更侧重的是在多个动画播放时对动画的控制(可以控制动画的顺序,延时,同时可以控原创 2018-01-03 14:48:29 · 2034 阅读 · 0 评论 -
自定义View(五)-动画- ObjectAnimator
介绍ObjectAnimator是派生自ValueAnimator的。所以ValueAnimator中所能使用的方法,在ObjectAnimator中都可以正常使用。但是已经有个ValueAnimator为什么还要加入ObjectAnimator.因为ValueAnimator是通过调用监听,得到变化的值来做动画的。而ObjectAnimator可以针对某一个控件的某个属性直接做动画,而不需要设置监原创 2018-01-03 14:47:35 · 723 阅读 · 0 评论 -
自定义View(四)-动画- Interpolator与Evaluator
介绍Interpolator插值器之前我们已经接触过了,而Evaluator好像我们还没有将,这是属性动画中俩个比较中的两个知识点,弄清楚它们有助于我们更好的使用与理解属性动画。 Interpolator插值器分析 之前我们已经明白了它的作用了,他就是一个控制动画如何运动的一个工具。比如有匀速效果插值器,回弹效果的插值器等等。现在我们就来从源码的角度分析下看看他是如何实现的。我们以Lin原创 2018-01-03 14:46:55 · 260 阅读 · 0 评论 -
自定义View(三)-动画-属性动画ValueAnimator
前言之前我们把视图动画(也就是View动画)分析的差不多了,当然帧动画我们没有讲解,其实帧动画比较简单,就是通过顺序播放一系列的图像从而产生动画效果,可以简单理解为图片的切换。和我们小时候玩的翻书让物体动起来是一个道理。它使用起来也比较简单。所以我们就不单独拿出来讲解。到后面我们会用到时再去简单讲解。这篇我们继续来学习动画之属性动画(Property Animator)。 介绍我们在第一篇文章的时原创 2018-01-03 14:45:02 · 338 阅读 · 0 评论 -
自定义View(二)-动画- 代码生成View动画
前言上篇我们介绍了视图动画,说的确切点应该是视图动画中的补间动画(Tween Animation),关于逐帧动画(Frame Animation)用法更简单,这里先不做介绍后期再自定义View的使用会用到,到时候讲解。这篇我们来一起学习将上篇用XML实现的动画用试着用代码来生成,毕竟有些时候我们是用代码来控制动画的。代码生成动画Animation公共类 这里给大家发一个网站里面XML,类属性都原创 2018-01-02 20:05:46 · 770 阅读 · 0 评论 -
自定义View(十)-View的事件分发机制
前言关于自定义View系列的文章,好久没有写了。今天抽空看了下Android开发艺术探索。正好看到了View的事件分发机制,所以将它写成笔记记录下来。 关于View的事件分发,我起初是学习郭神的2篇文章。感觉其实也没有什么。大致也就了解下。不过看完其他很多优秀的文章和书籍后,才知道自己too young too simple。下面我们就一起来分析下Android的时间分发机制。 关于事...原创 2018-02-11 22:13:06 · 380 阅读 · 0 评论