Android实现多张图片合成加载动画

本文实例为大家分享了android实现多张图片合成加载动画的具体代码 , 供大家参考 , 具体内容如下
1、自定义progressdialog
public class myprogressdialog extends progressdialog {    private int procressloadres;    private imageview mimageview;    private animationdrawable animationdrawable;    public myprogressdialog(context context,int procressloadres) {        super(context);        this.procressloadres = procressloadres;    }    public myprogressdialog(context context, int theme, int procressloadres) {        super(context, theme);        this.procressloadres = procressloadres;    }    @override    protected void oncreate(bundle savedinstancestate) {        super.oncreate(savedinstancestate);        setcontentview(r.layout.layout_progress);        mimageview = (imageview) findviewbyid(r.id.image);        //设置动画背景        mimageview.setbackgroundresource(procressloadres);        //获取动画对象 , 必须在上一步之后        animationdrawable = (animationdrawable) mimageview.getbackground();        mimageview.post(new runnable() {            @override            public void run() {                //启动动画                animationdrawable.start();            }        });    }}2、myprogressdialog对应的布局layout_progress.xml
<?xml version="1.0" encoding="utf-8"?><linearlayout xmlns:android="http://schemas.android.com/apk/res/android"    android:orientation="vertical"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:gravity="center"    android:background="@null">    <imageview        android:id="@+id/image"        android:layout_width="wrap_content"        android:layout_height="wrap_content" /></linearlayout>3、使用自定义的myprogressdialog
public class mainactivity extends appcompatactivity {    private button button;    private myprogressdialog progressdialog;    @override    protected void oncreate(bundle savedinstancestate) {        super.oncreate(savedinstancestate);        setcontentview(r.layout.activity_main);        button = (button) findviewbyid(r.id.button);        //传入style和anim文件        progressdialog = new myprogressdialog(this,r.style.dialog,r.anim.loading);        button.setonclicklistener(new view.onclicklistener() {            @override            public void onclick(view view) {                progressdialog.show();            }        });    }}【Android实现多张图片合成加载动画】4、使用时需要一个style文件和一个anim文件
style.xml
<style name="dialog" parent="@android:style/theme.dialog">        <!--边框-->        <item name="android:windowframe">@null</item>        <!--是否浮现在activity之上-->        <item name="android:windowisfloating">true</item>        <!--半透明-->        <item name="android:windowistranslucent">false</item>        <!--无标题-->        <item name="android:windownotitle">true</item>        <!--背景透明去掉背景色边框也就去掉了 -->        <item name="android:windowbackground">@color/transparent</item>         <!--模糊-->        <item name="android:backgrounddimenabled">false</item>    </style>anim文件夹下的loading.xml文件
<?xml version="1.0" encoding="utf-8"?><animation-list xmlns:android="http://schemas.android.com/apk/res/android">    <item android:drawable="@mipmap/loading1" android:duration="100"/>    <item android:drawable="@mipmap/loading2" android:duration="100"/>    <item android:drawable="@mipmap/loading3" android:duration="100"/>    <item android:drawable="@mipmap/loading4" android:duration="100"/>    <item android:drawable="@mipmap/loading5" android:duration="100"/>    <item android:drawable="@mipmap/loading6" android:duration="100"/>    <item android:drawable="@mipmap/loading7" android:duration="100"/>    <item android:drawable="@mipmap/loading8" android:duration="100"/>    <item android:drawable="@mipmap/loading9" android:duration="100"/>    <item android:drawable="@mipmap/loading10" android:duration="100"/>    <item android:drawable="@mipmap/loading11" android:duration="100"/>    <item android:drawable="@mipmap/loading12" android:duration="100"/>    <item android:drawable="@mipmap/loading13" android:duration="100"/>    <item android:drawable="@mipmap/loading14" android:duration="100"/>    <item android:drawable="@mipmap/loading15" android:duration="100"/>    <item android:drawable="@mipmap/loading16" android:duration="100"/>    <item android:drawable="@mipmap/loading17" android:duration="100"/>    <item android:drawable="@mipmap/loading18" android:duration="100"/>    <item android:drawable="@mipmap/loading19" android:duration="100"/>    <item android:drawable="@mipmap/loading20" android:duration="100"/>    <item android:drawable="@mipmap/loading21" android:duration="100"/>    <item android:drawable="@mipmap/loading22" android:duration="100"/>    <item android:drawable="@mipmap/loading23" android:duration="100"/>    <item android:drawable="@mipmap/loading24" android:duration="100"/>    <item android:drawable="@mipmap/loading25" android:duration="100"/>    <item android:drawable="@mipmap/loading26" android:duration="100"/>    <item android:drawable="@mipmap/loading27" android:duration="100"/>    <item android:drawable="@mipmap/loading30" android:duration="100"/>    <item android:drawable="@mipmap/loading31" android:duration="100"/>    <item android:drawable="@mipmap/loading32" android:duration="100"/>    <item android:drawable="@mipmap/loading33" android:duration="100"/>    <item android:drawable="@mipmap/loading34" android:duration="100"/></animation-list>在color.xml文件中添加
<color name="transparent">#00ffffff</color>以上就是本文的全部内容 , 希望对大家的学习有所帮助 , 也希望大家多多支持www.887551.com 。
-- 展开阅读全文 --

    推荐阅读