`
www611
  • 浏览: 3834 次
  • 性别: Icon_minigender_2
  • 来自: 南京
最近访客 更多访客>>
社区版块
存档分类
最新评论

Android中帧动画在Activity启动时自动运行的几种方式

阅读更多
帧动画:
第一种方式启动帧动画:(在Activity启动时会自动运行动画)
AnimationDrawable ad;
ImageView iv = (ImageView) findViewById(R.id.animation_view);
iv.setBackgroundResource(R.drawable.animation);
ad = (AnimationDrawable) iv.getBackground();
iv.getViewTreeObserver().addOnPreDrawListener(opdl);
//当一个视图树将要绘制时产生事件,可以添加一个其事件处理函数

OnPreDrawListener opdl=new OnPreDrawListener(){
@Override
public boolean onPreDraw() {
ad.start();
return true; //注意此行返回的值
}
};
第二种方式启动动画:(在Activity启动时会自动运行动画)
ImageView image = (ImageView) findViewById(R.id.animation_view);
image.setBackgroundResource(R.anim.oldsheep_wait);
        animationDrawable = (AnimationDrawable) image.getBackground();
        RunAnim runAnim=new RunAnim();
        runAnim.execute("");

class RunAnim extends AsyncTask<String, String, String>
{
        @Override
        protected String doInBackground(String... params)
        {
            if (!animationDrawable.isRunning())
            {
                animationDrawable.stop();
                animationDrawable.start();
            }
            return "";
        }
}

第三种方式启动动画:(在Activity启动时会自动运行动画)
ImageView image = (ImageView) findViewById(R.id.animation_view);
image.setBackgroundResource(R.anim.oldsheep_wait);
        animationDrawable = (AnimationDrawable) image.getBackground();
image.post(new Runnable()
{
            @Override
            public void run()
            {
                animationDrawable.start();
            }
        });

第四种方式启动动画:(在Activity启动时会自动运行动画)
ImageView image = (ImageView) findViewById(R.id.animation_view);
image.setBackgroundResource(R.anim.oldsheep_wait);
        animationDrawable = (AnimationDrawable) image.getBackground();

@Override
    public void onWindowFocusChanged(boolean hasFocus)
    {
        animationDrawable.start();
        super.onWindowFocusChanged(hasFocus);
    }
这个ad.start不能直接写在onClick,onStart,onResume里面,是无效的,无法启动动画,只能写在比如事件监听当中
分享到:
评论
1 楼 13488455738 2011-11-08  
非常感谢!解决了困扰我几天的问题 

相关推荐

    android中activity跳转的几种动画

    本篇文章将深入探讨如何在Android中实现Activity跳转的几种动画效果。 一、默认动画 在不设置任何自定义动画的情况下,Android系统会使用默认的滑动效果进行Activity切换。这种效果可以通过设置`activity过渡`来...

    Android 帧动画优化实现可减少内存使用

    在Android开发中,帧动画(Frame Animation)是一种常见的动态效果实现方式,它通过连续播放一系列静态图片来模拟动画效果。然而,如果不进行优化,帧动画可能会导致内存消耗过大,影响应用性能,甚至引发ANR...

    android逐帧动画

    在Android平台上,逐帧动画是一种常见且直观的动画实现方式,尤其适用于创建简单的连续图像序列,比如行走、跳跃等动作效果。在这个特定的案例中,我们看到标题为“android逐帧动画”,描述提到有三张图片进行切换,...

    Android中Activity切换动画

    Android系统默认提供了几种基本的切换动画,如淡入淡出、滑动等。这些动画可以通过在Manifest.xml文件中的`&lt;activity&gt;`标签内设置`android:transitionAnimationScale`属性来启用或禁用。例如,设置为0.5将使动画...

    Andorid帧动画Demo及知识树

    3. **在代码中使用帧动画**:在Activity或View中加载并启动帧动画: ```java AnimationDrawable frameAnimation = (AnimationDrawable) getResources().getDrawable(R.drawable.frame_animation); ImageView ...

    activity启动动画、android5.0共享元素启动动画,详解demo

    在Android开发中,Activity的启动动画和Android 5.0(Lollipop)引入的共享元素启动动画是提升用户体验的关键技术。下面将详细讲解这两个概念及其应用。 ### Activity启动动画 Activity启动动画是Android中用于改变...

    Android 逐帧动画源码.rar

    除了逐帧动画,Android还提供了其他几种动画类型,如补间动画(Tween Animation)、属性动画(Property Animation)等。补间动画通过改变对象的属性(如平移、缩放、旋转等)来创建动画效果;属性动画更加强大,支持...

    android 简单的帧动画例子

    在Android开发中,帧动画(Frame Animation)是一种常见的动画效果,它通过连续播放一系列静态图像来创造出动态的视觉效果,类似于传统的电影制作原理。在这个"android 简单的帧动画例子"中,我们将探讨如何在...

    android studio 几种基本Activity效果的实现

    本文将深入探讨如何在Android Studio中实现几种基本的Activity效果,这些效果对于提升用户体验至关重要,特别适合正在入门Android编程的开发者。 Activity在Android系统中扮演着核心角色,它是应用程序的基本构建块...

    Android下逐帧动画的Demo

    在Android开发中,逐帧动画(Frame Animation)是一种常见的实现简单动画效果的技术,它通过连续显示一系列静态图像来创建动态效果,类似于早期的电视动画。本Demo主要展示了如何在Android应用中实现逐帧动画,我们...

    Android程序研发源码Android 逐帧动画源码.zip

    在Android应用开发中,逐帧动画(Frame-by-Frame Animation)是一种常见的动画实现方式,尤其适用于游戏或复杂的交互效果。本资源"Android程序研发源码Android 逐帧动画源码.zip"提供了一个名为"AnimationDemo"的...

    Android的Activity动画

    在Android开发中,Activity动画是提升用户体验的重要手段之一。它不仅能让应用的界面交互更加生动有趣,还能在一定程度上引导用户理解应用的操作流程。本文将深入探讨Android中的Activity动画,包括基本概念、类型...

    Android 启动方式 DEMO

    本DEMO主要展示了Android应用中的几种常见启动方式以及与之相关的动画效果和UI交互,如通过ViewPage实现的左右滑动以及BUTTON触发的主界面启动。下面我们将详细探讨这些知识点。 1. **Android启动模式**: - **...

    Android Activity进出动画三种方法

    本文将介绍Android Activity进出动画的三种方法,分别是使用overridePendingTransition()方法、在清单文件中设置theme和在activity中用代码设置动画。 第一种方法:使用overridePendingTransition()方法 ...

    Android开发之利用动画做出悬浮效果(新版)

    除了在Activity启动时应用动画,我们还可以在Activity之间切换时添加过渡动画。通过`Intent`传递数据并设置动画,可以让用户在应用中导航时有更流畅的视觉体验。 6. **监听动画状态** 为了在动画执行过程中执行...

    Android加载动画

    在Android开发中,加载动画是提升用户体验的重要组成部分,尤其是在数据加载、网络请求或者初始化界面时,用户可能会等待一段时间。为了使这个过程不显得枯燥乏味,开发者常常会使用各种创意的加载动画来吸引用户的...

    android手机应用源码逐帧动画源码.rar

    在Android开发中,逐帧动画可以通过以下几种方式实现: 1. **AnimationDrawable**:这是一个基于XML的动画资源类型,可以定义一系列的帧图片,并设置每帧持续的时间。在Activity或View的背景中引用...

    activity切换动画效果大全

    android activity切换动画效果大全,包括六个经典例子: 1、25个activity切换的动画效果;...5、android中activity跳转的几种动画 6、动画效果 translate、scale、alpha、rotate 切换Activity动画 控件位置调整;

    Android手势操作和Activity切换动画Demo

    在Android开发中,手势操作和Activity切换动画是两个重要的组件,它们极大地提升了用户界面的交互性和体验。这个"Android手势操作和Activity切换动画Demo"是一个学生练习项目,它旨在教授开发者如何实现这两种功能。...

    Android使用Activity用作弹出式对话框

    在Android开发中,有时我们需要创建一个弹出式对话框来与用户进行交互,但不同于常见的`Dialog`类,我们可以利用`Activity`来实现这一功能。这种方式适用于需要更复杂交互或者自定义布局的情况。本文将详细讲解如何...

Global site tag (gtag.js) - Google Analytics