Android动画机制

IT

Android3.0之前

  • 逐帖动画(Frame animation)
    按照各帖设置的时间顺序播放图片
  • 补间动画(Tween animation)
    只需定义动画的开始和结束这两个关键帖,并指定动画的时间和方式,交由Android系统进行计算。只改变了View的绘制效果,没有改变其真实属性
动画类型 说明
AlphaAnimation 透明度
ScaleAnimation 缩放
TranslateAnimation 平移
RotateAnimation 旋转

View的绘制流程

IT
  • Android的UI管理系统的层级关系
    Activity={PhoneWindow={DecorView={TitleView, ContentView}}}

DecorView是一个应用窗口的根容器,它本质上是一个FrameLayout。DecorView有唯一一个子View,它是一个垂直LinearLayout,包含两个子元素,一个是TitleView(ActionBar的容器),另一个是ContentView(窗口内容的容器)。关于ContentView,它是一个FrameLayout(android.R.id.content),我们平常用的setContentView就是设置它的子View。上图还表达了每个Activity都与一个Window(具体来说是PhoneWindow)相关联,用户界面则由Window所承载

  • 视图绘制的过程分三个步骤,分别为测量(Measure),布局(Layout),绘制(Draw)。

  • MeasureSpec
    表示的是一个32位的整数值,高两位表示测量模式SpecMode,低30位代表测量模式下的大小SpecSize。
    对于普通的View来说,它的MeasureSpec是由它的父视图的MeasureSpec和其自身的LayoutParams共同决定的。

每个人都在用力活着,用他自己的方式

文/卢思浩 at 2013-04-18 14:47:18

(一)

我有一个很传奇的室友,他基本不翘课,还能一周打三份工。传奇的地方在于,他其中的一份工作会占据他大量的时间,他从下午四点出门工作,可以一直工作到第二天凌晨4点回来,有时候甚至可以工作15个小时。在其他空余的时间里,他也会去餐厅打工,我一度怀疑我身边的这个人是不是地球人,因为在我看来地球人是需要一定的睡眠和休息时间的,然而他似乎不用。对于他这样的生活作息,我们一堆朋友基本都保持着一个态度:太拼命了,这简直是在透支青春。

Android触摸事件传递机制

IT

一次完整事件的传递主要包括三个阶段:分别是事件的分发、拦截、消费。

触摸事件被封装为MotionEvent,包括ACTION_DOWN,ACTION_MOVE, ACTION_UP。

触摸事件在各个组件中的方法

功能 是否存在该方法 Activity View ViewGroup
分发 dispatchToucheEvent
拦截 onInterceptToucheEvent
消费 onToucheEvent

在这个异常“孤独”的日子

2017年11月11日,特别的日子,也发生了一些特别的事

双十一,一个被进化出来光棍节,旋即现在失去了他本来的意愿,沦为了买买买的节日。

也许最开始只是光棍们的宣泄,没有人在总得有些物件吧。但是买买买谁不乐意呢,电商们也是推波助澜,各种“折扣”,红包、活动,愈演愈烈。