圆形ProgressBar之外的表示进度的图片动画

本文介绍如何在Android应用中使用AnimationDrawable和AnimationList来创建一个旋转的图片动画,通过定义一系列不同状态的图片资源并设置动画时长,实现流畅的图片旋转效果。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

图片旋转动画除了ProgressBar(建议优先选这个来使用)之外,还有图片的setImageLevel(),设置图片的Level,根据不同的Level来旋转图片;

union_login.xml定义在res/layout目录中

<ImageView
    android:id="@+id/union_login_loading"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignParentRight="true"
    android:layout_centerVertical="true"
    android:layout_marginRight="8dip"
    android:background="@anim/wait_anim"
    android:contentDescription="@string/common_imageview_contentdescription" />

wait_anim.xml,定义在res/anim目录中

<?xml version="1.0" encoding="utf-8"?>
<animation-list 
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:oneshot="false" >

    <item
        android:drawable="@drawable/wait_a01"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a02"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a03"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a04"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a05"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a06"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a07"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a08"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a09"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a010"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a011"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a012"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a013"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a014"
        android:duration="100" />
    <item
        android:drawable="@drawable/wait_a015"
        android:duration="100" />

</animation-list>

代码:

private AnimationDrawable mAnimaition;
private ImageView mLoadingImg;
mLoadingImg = (ImageView) findViewById(R.id.union_login_loading);
mAnimaition = (AnimationDrawable) mLoadingImg.getBackground();
if (!mAnimaition.isRunning()) { // 开始图片动画
    mAnimaition.start();
}
if (mAnimaition.isRunning()) { // 停止图片动画
    mAnimaition.stop();
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值