老式电视机关闭的时候画面一闪消失的那个效果:

首先创建一个TVOffAnimation继承于Animation:

首先创建一个TVOffAnimation继承于Animation

然后在initialize里面设置一些参数
import android.graphics.Matrix;import android.view.animation.AccelerateDecelerateInterpolator;import android.view.animation.Animation;import android.view.animation.Transformation;

public class TVOffAnimation extends Animation {

private int halfWidth;private int halfHeight;

    @Overridepublic void initialize(int width, int height, int parentWidth,int parentHeight) {

super.initialize(width, height, parentWidth, parentHeight);        setDuration(500);        setFillAfter(true);//保存View的中心点        halfWidth = width / 2;        halfHeight = height / 2;        setInterpolator(new AccelerateDecelerateInterpolator());

    }

    @Overrideprotected void applyTransformation(float interpolatedTime, Transformation t) {

final Matrix matrix = t.getMatrix();if (interpolatedTime < 0.8) {            matrix.preScale(1+0.625f*interpolatedTime, 1-interpolatedTime/0.8f+0.01f,halfWidth,halfHeight);        }else{            matrix.preScale(7.5f*(1-interpolatedTime),0.01f,halfWidth,halfHeight);        }    }}

说明一下做法:

其中setInterpolator(new AccelerateDecelerateInterpolator())选择一个先加速后减速的效果

最后动画的部分里面

interpolatedTime表示的是当前动画的间隔时间 范围是0-1

那么横向来讲前80%的时间我们要横向拉伸到150%,纵向是直接减小,最后只留一条线。
后20%的时间里我们要横向从150%压缩至0%,纵向保持不变就好了,当横向为0的时候就全部消失了。
可能大家对于1+0.625f*interpolatedTime, 1-interpolatedTime/0.8f+0.01f,7.5f*(1-interpolatedTime),0.01f 这4个值比较疑惑,其实很简单,这是一个一次函数的函数值
如图为sx的变化曲线
然后在activity中直接可以用了 :
View img = findViewById(R.id.imageView);button.setOnClickListener(new OnClickListener() {

            @Overridepublic void onClick(View v) {                img.startAnimation(new TVOffAnimation());            }        });

/Files/mudoot/TVOffDemo.rar

转自:http://www.cnblogs.com/mudoot/articles/1985142.html

转载于:https://www.cnblogs.com/shanzei/archive/2012/03/24/2415664.html

Android电视关闭的闪屏动画效果相关推荐

  1. android 礼花动画,微信 8.0 正式版来袭 炸弹、烟花、庆祝会有全屏动画效果

    腾讯现已发布微信 8.0 版本的安卓正式版,用户可通过官方渠道下载.众所周知,微信 8.0 中提供了 22 种状态供用户自由定制每日状态,现在似乎出现了一点不同寻常的玩法. 在微信 8.0 中,用户可 ...

  2. Android 12 SplashScreen(闪屏页)适配

    牢骚(废话) 谷歌真是吃饱了撑的,搞这搞那,Android12新出了一个强制闪屏页,效果就跟小米的闪屏页广告一样,只不过谷歌的是强制的,小米是可选的.不过谷歌再怎么搞,你还是要适配啊,难受. 正题 所 ...

  3. 【SwiftUI模块】0008、SwiftUI-自定义启动闪屏动画-App启动闪屏曲线路径动画

    SwiftUI小功能模块系列 0001.SwiftUI自定义Tabbar动画效果 0002.SwiftUI自定义3D动画导航抽屉效果 0003.SwiftUI搭建瀑布流-交错网格-效果 0004.Sw ...

  4. 电脑分屏软件_Fcpx分屏插件 41组视频分割可自定义分屏动画效果插件 可分9屏 Split Pop...

    Fcpx分屏插件 41组视频分割可自定义分屏动画效果插件 这是一套目前小编感觉最好用的Fcpx分屏插件,一.支持4K.二.最多可分9屏.三.可微调参数调整最佳展示.四.41种效果简洁大方,涵盖各类流行 ...

  5. android 自定义刷新控件,Android开发中MJRefresh自定义刷新动画效果

    有时候我们对自己开发的项目经常不满意,但是我们要达到自定义刷新动画的效果有一定的难度,别着急,下面爱站技术频道和大家分享Android开发中MJRefresh自定义刷新动画效果,一起来学习吧! [一] ...

  6. android电池充电动画,Android 开机充电图标和充电动画效果

    首先驱动需要先获取到2个power supply kernel\msm-3.18\drivers\usb\phy\phy-msm-usb.c motg->usb_psy.name = " ...

  7. android动画知乎,GitHub - ryanhoo/Zhihu-Parallax-Animation: 知乎 Android 客户端启动页的视差动画效果实现...

    Parallax Animation 知乎 Android 客户端启动页的视差动画效果实现 Blog Declaration 项目中图片等素材均取自于知乎 Android 客户端,仅作学习交流之用,请 ...

  8. Android 文字 流光特效(仿锁屏文字的白光闪过动画效果)

    最近有需求说要开发一个新模块,再模块的入口 用动画 提醒用户.模仿的动画效果 如下: 经过百度,发现Android 这类的动画很少,通过度娘知道可以通过 LinearGradient 线性渲染 来实现 ...

  9. Android动画——仿vivo X6闪充动画效果

    做程序猿这么久一直没有写博客,是不正常的,故以此为第一篇博客,开始我的博客生涯. 前不久,看到一篇博客,关于X6闪充动画的效果,是一个叫什么"瓶子盖子"写的,暂时就叫这个名字吧,具 ...

最新文章

  1. 1024,不讲技术,来一套程序员续命操~
  2. visual studio 2017 中默认无法开发 Android 8.0 及以上系统的解决方案
  3. 测试Servlet生命周期学习笔记
  4. php name .id,PHP函数补完:session_name()
  5. OQPSK:Offset Quadrature Phase Shift Keying偏移正交相移键控的MATLAB仿真/FPGA实现
  6. Android中使用Intent的Action和Data属性实现点击按钮跳转到拨打电话和发送短信
  7. 总结获取原生JS(javascript)的父节点、子节点、兄弟节点
  8. 详解Vue中watch的高级用法
  9. Linux系统【三】回收子进程
  10. Linux可以对目录进行硬链接,Linux硬链接与软链接原理及用法解析
  11. 【转】eclipse技巧1
  12. maven模块化分解项目
  13. [LeetCode系列] 跳跃问题II
  14. 平面设计论文要如何写?
  15. 怎样备份计算机里的驱动程序,怎么备份电脑的驱动 驱动人生备份驱动方法
  16. 火狐浏览器复制网页文字_从Firefox中的网页链接的多种“复制”格式中选择
  17. lob移表空间 oracle_关于oracle带lob对象的分区表,移动表空间的问题
  18. 数据仓库(三)之架构篇
  19. linux内核zfs,Linus Torvalds回应用户抱怨:不建议使用 ZFS On Linux
  20. 公众号附件链接怎么放?

热门文章

  1. 一招明白URL和URI的区别
  2. java_day19_MVC和配置文件
  3. 启用系统登录失败处理功能
  4. android数据的五种存储方式
  5. ConcurrentDictionary的ToDictionary
  6. XDJM的情意比山高,比海深!!
  7. python全栈开发_day10_函数的实参和形参
  8. Python 列表元组字典集合
  9. iOS-AFNetworking参数和多文件同时上传【多文件上传】
  10. Android:日常学习笔记(8)———探究UI开发(5)