欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Android中四种补间动画的使用示例(附代码下载)

程序员文章站 2022-04-16 08:16:12
场景 Android中四种补间动画。 透明度渐变动画 旋转动画 缩放动画 平移动画 注: 博客: https://blog.csdn.net/badao_liumang_qizhi 关注公众号 霸道的程序猿 获取编程相关电子书、教程推送与免费下载。 实现 透明度渐变动画 首先在布局文件中添加一个Im ......

场景

android中四种补间动画。

透明度渐变动画

Android中四种补间动画的使用示例(附代码下载)

 

 

Android中四种补间动画的使用示例(附代码下载)

旋转动画

Android中四种补间动画的使用示例(附代码下载)

 

 

Android中四种补间动画的使用示例(附代码下载)

缩放动画

Android中四种补间动画的使用示例(附代码下载)

 

 

Android中四种补间动画的使用示例(附代码下载)

平移动画

Android中四种补间动画的使用示例(附代码下载)

 

 

Android中四种补间动画的使用示例(附代码下载)

注:

博客:

关注公众号
霸道的程序猿
获取编程相关电子书、教程推送与免费下载。

实现

透明度渐变动画

首先在布局文件中添加一个imageview,并设置图片源与id

<?xml version="1.0" encoding="utf-8"?>
<relativelayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".bujiananimactivity">

    <imageview
        android:layout_width="wrap_content"
        android:id="@+id/image"
        android:src="@drawable/bg02"
        android:layout_height="wrap_content"/>

 

</relativelayout>

 

然后再res下新建anim目录,在anim目录下新建动画资源文件alpha.xml

Android中四种补间动画的使用示例(附代码下载)

 

 

 

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <alpha android:fromalpha="0"
        android:toalpha="1"
        android:duration = "2000"/>
</set>

 

在动画资源文件中设置起始透明度为0,终止透明度为1,设置持续时间为2秒。

然后来到bujiananimactivity中,获取imageview,然后设置其点击事件监听器。

点击事件中通过

 animation anim = animationutils.loadanimation(bujiananimactivity.this,r.anim.alpha);

 

加载动画资源文件创建动画对象。

然后调用imageview的startview方法启动动画。

package com.badao.animationtest;

import androidx.appcompat.app.appcompatactivity;

import android.os.bundle;
import android.view.view;
import android.view.animation.animation;
import android.view.animation.animationutils;
import android.widget.imageview;

public class bujiananimactivity extends appcompatactivity {

    @override
    protected void oncreate(bundle savedinstancestate) {
        super.oncreate(savedinstancestate);
        setcontentview(r.layout.activity_bu_jian_anim);
        final imageview imageview = (imageview) findviewbyid(r.id.image);
        imageview.setonclicklistener(new view.onclicklistener() {
            @override
            public void onclick(view v) {
                //创建动画对象
                animation anim = animationutils.loadanimation(bujiananimactivity.this,r.anim.translate);
                //启动动画
                imageview.startanimation(anim);
            }
        });
    }
}

 

旋转动画

与上面类似,在anim下新建ronate.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <rotate android:fromdegrees="0"
        android:todegrees="360"
        android:pivotx="50%"
        android:pivoty="50%"
        android:duration = "2000"/>
</set>

 

设置起始角度与终止角度,然后设置旋转中心x与y的位置,再设置动画持续时间。

然后将activity中加载的动画文件切换为此动画资源文件。

缩放动画

与上面类似,在anim下新建scale.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <scale android:fromxscale="1"
        android:fromyscale="1"
        android:toxscale="2"
        android:toyscale="2"
        android:pivoty="50%"
        android:pivotx="50%"
        android:duration = "2000"/>
</set>

 

设置缩放的起始和终止比例,缩放的中心位置与持续时间。

然后将activity中加载的动画文件切换为此动画资源文件。

平移动画

与上面类似,在anim下新建translate.xml

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android">
    <translate android:fromxdelta="0"
        android:fromydelta="0"
        android:toxdelta="300"
        android:toydelta="300"
        android:duration = "2000"/>
</set>

 

设置起始点与结束点的x与y的位置,并设置持续时间2秒。

然后将activity中加载的动画文件切换为此动画资源文件。

代码下载

https://download.csdn.net/download/badao_liumang_qizhi/12097375