Android 仿微信红包动画特效一分钟搞定

简单来说你多在微信中发几个群红包就能有一些思路,但是有些特定的状态需要注意前后端配合。

搞了半个小时TMD没有把视频转换成GIF,直接上照片吧,醉了~

1.支付完成之后会出现第一个图,打开第二个图的时候当前界面是有一个动画效果的,可以微信中发个群红包试试~

无非是图片抖两下,这里将第二张的红包总布局设置Animation

<?xml version="1.0" encoding= "UTF-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"
    android:shareInterpolator="false" >
    <!--设置图片缩放第一次从0.9-1.1倍-->
    <scale
        android:fromXScale="0.9"
        android:toXScale="1.1"
        android:fromYScale="0.9"
        android:toYScale="1.1"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="300"
        android:repeatCount="1"
        android:repeatMode="reverse" />
    <!--设置图片缩放第二次从0.9-1倍-->
    <scale
        android:fromXScale="0.9"
        android:toXScale="1"
        android:fromYScale="0.9"
        android:toYScale="1"
        android:pivotX="50%"
        android:pivotY="50%"
        android:duration="300"
        android:repeatCount="1"
        android:repeatMode="reverse" />
</set>
然后在Activity中调就ok了

Animation animationLayout = AnimationUtils.loadAnimation(this, R.anim.award_anima);
awardAnimationLayout.setAnimation(animationLayout);

2.点击图二的开的时候,想让这个图片转动,如果你们的UI妹子就给你一张这个图,只能让当前这个图片按照Y轴转动了

定义一个Animation自己去画吧

package shangche.club.geton.view;

import android.graphics.Camera;
import android.graphics.Matrix;
import android.view.animation.Animation;
import android.view.animation.DecelerateInterpolator;
import android.view.animation.Transformation;

/**
 * Created by HuoWei on 2017/12/18.
 */

public class AwardRotateAnimation extends Animation {
    int centerX, centerY;
    Camera camera = new Camera();

    @Override
    public void initialize(int width, int height, int parentWidth,
                           int parentHeight) {
        super.initialize(width, height, parentWidth, parentHeight);
        //获取中心点坐标
        centerX = width / 2;
        centerY = height / 2;
        //动画执行时间  自行定义
        setDuration(800);
        setInterpolator(new DecelerateInterpolator());
    }

    @Override
    protected void applyTransformation(float interpolatedTime, Transformation t) {
        final Matrix matrix = t.getMatrix();
        camera.save();
        //中心是绕Y轴旋转  这里可以自行设置X轴 Y轴 Z轴
        camera.rotateY(360 * interpolatedTime);
        //把我们的摄像头加在变换矩阵上
        camera.getMatrix(matrix);
        //设置翻转中心点
        matrix.preTranslate(-centerX, -centerY);
        matrix.postTranslate(centerX, centerY);
        camera.restore();
    }
}
直接在Activity中调用就OK了,

AwardRotateAnimation animation = new AwardRotateAnimation();
animation.setRepeatCount(Animation.INFINITE);
openGroupAward.startAnimation(animation);
网络请求结束后跳转到详情时,记得清空View的状态

openGroupAward.clearAnimation();

demo下载地址:http://download.youkuaiyun.com/download/android_hv/10166569


"sgmediation.zip" 是一个包含 UCLA(加利福尼亚大学洛杉矶分校)开发的 sgmediation 插件的压缩包。该插件专为统计分析软件 Stata 设计,用于进行中介效应分析。在社会科学、心理学、市场营销等领域,中介效应分析是一种关键的统计方法,它帮助研究人员探究变量之间的因果关系,尤其是中间变量如何影响因变量与自变量之间的关系。Stata 是一款广泛使用的统计分析软件,具备众多命令和用户编写的程序来拓展其功能,sgmediation 插件便是其中之一。它能让用户在 Stata 中轻松开展中介效应分析,无需编写复杂代码。 下载并解压 "sgmediation.zip" 后,需将解压得到的 "sgmediation" 文件移至 Stata 的 ado 目录结构中。ado(ado 目录并非“adolescent data organization”缩写,而是 Stata 的自定义命令存放目录)目录是 Stata 存放自定义命令的地方,应将文件放置于 "ado\base\s" 子目录下。这样,Stata 启动时会自动加载该目录下的所有 ado 文件,使 "sgmediation" 命令在 Stata 命令行中可用。 使用 sgmediation 插件的步骤如下:1. 安装插件:将解压后的 "sgmediation" 文件放入 Stata 的 ado 目录。如果 Stata 安装路径是 C:\Program Files\Stata\ado\base,则需将文件复制到 C:\Program Files\Stata\ado\base\s。2. 启动 Stata:打开 Stata,确保软件已更新至最新版本,以便识别新添加的 ado 文件。3. 加载插件:启动 Stata 后,在命令行输入 ado update sgmediation,以确保插件已加载并更新至最新版本。4
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值