博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
模拟优酷像关电视一样的退出效果
阅读量:6478 次
发布时间:2019-06-23

本文共 2046 字,大约阅读时间需要 6 分钟。

hot3.png

     很久没写博文了,最近为公司的应用做了一个像关电视一样的退出效果,也是看见优酷APP这样搞了,所以试着弄一弄,下面就由我来将这个退出效果全盘托出。
    其实所谓像关电视一样的退出效果就是一个动画而已,好吧,看到这里的朋友可以先自己想想,其实思路是很简单的。
    1.要求屏幕瞬间白屏。
    2.白色屏幕以匀加速或匀减速向中间挤压,直至一条白线后消失不见,整个过程大概200毫秒。
    3.露出黑漆漆一片的黑色背景。
    首先,布局文件的写法。有很多种,最简单的就是利用RelativeLayout或者FrameLayout为应用首界面的根布局,如果应用的背景色本身为黑色最好,就像优酷一样。如果应用的背景色不为黑色,那么在根布局里写一个
<FrameLayout
      android:id="@+id/fl_off"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:visibility="gone"
         >
    <ImageView
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@color/text_black" />
    <ImageView
          android:id="@+id/iv_off"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:background="@color/text_white"
         android:visibility="gone"/>
</FrameLayout>
第一个ImageView为黑色的背景色,第二个为白色的背景色。
下面是动画文件的写法 res/anim/tv_off.xml
    
<?xml version="1.0" encoding="utf-8"?>
<set android:shareInterpolator="false" android:zAdjustment="top"
  xmlns:android="http://schemas.android.com/apk/res/android"><span></span> <scale android:interpolator="@android:anim/accelerate_interpolator" android:duration="200" android:pivotX="50.0%" android:pivotY="50.0%" android:fromXScale="1.0" android:toXScale="1.0" android:fromYScale="1.0" android:toYScale="0.0030" />
    <scale android:interpolator="@android:anim/accelerate_interpolator" android:duration="200" android:pivotX="50.0%" android:pivotY="50.0%" android:startOffset="200" android:fromXScale="1.0" android:toXScale="0.0" android:fromYScale="1.0" android:toYScale="0.3" />
    <alpha android:interpolator="@interpolator/accelerate_quint" android:duration="400" android:fillAfter="true" android:fromAlpha="1.0" android:toAlpha="0.0" android:fillEnabled="true" />
</set>
这个很简单,大家copy就行了。
因为动画引用到了加速器,下面是加速器文件的写法 res/interpolator/accelerate_quint.xml
    
<?xml version="1.0" encoding="utf-8"?>
<accelerateInterpolator android:factor="2.5"
  xmlns:android="http://schemas.android.com/apk/res/android" />
这是一个匀加速的加速器,加速倍数为2.5。

好了,关键的东西全都写出来了,加载动画我就不说了,各位看官如果觉得还行就点个赞吧!

西西 提前祝 大家新年快乐,该文转自胖哥哥

转载于:https://my.oschina.net/xixios/blog/95664

你可能感兴趣的文章
OSI与TCP/IP各层的结构与功能,都有哪些协议
查看>>
Android实例-程序切换到后台及从后台切换到前台
查看>>
spring boot启动定时任务
查看>>
值类型和引用类型
查看>>
[转]html5 Canvas画图教程(6)—canvas里画曲线之arcTo方法
查看>>
maven 常用插件
查看>>
算法 (二分查找算法)
查看>>
java Date 当天时间戳处理
查看>>
Python~迭代
查看>>
linux常用命令-关机、重启
查看>>
css布局 - 九宫格布局的方法汇总(更新中...)
查看>>
画图函数——点,线,矩形等等
查看>>
ejabberd_local
查看>>
BZOJ5020 [THUWC 2017]在美妙的数学王国中畅游LCT
查看>>
hdu 6030 矩阵快速幂
查看>>
tomcat类加载机制
查看>>
ado.net2.0中的缓存使用SqlDependency类
查看>>
Java基础学习总结(94)——Java线程再学习
查看>>
iOS开发之调用系统设置
查看>>
利用 ACPI\\ACPI0003设备 判断笔记本还是台式机
查看>>