帧动画在第一个activity中不能播放

帧动画在第一个activity中不能播放,必须要通过事件触发才行,解决:

 

 

package com.lik;

 

import android.app.Activity;

import android.graphics.drawable.AnimationDrawable;

import android.os.Bundle;

import android.view.KeyEvent;

import android.view.MotionEvent;

import android.view.View;

import android.view.ViewTreeObserver.OnPreDrawListener;

import android.widget.ImageView;

 

public class lik extends Activity {

    AnimationDrawable ad;

 

    @Override

    public void onCreate(Bundle savedInstanceState) {

            super.onCreate(savedInstanceState);

            setContentView(R.layout.main);

            ImageView iv = (ImageView) findViewById(R.id.animationImage);

            iv.setBackgroundResource(R.drawable.frame_animation);

            ad = (AnimationDrawable) iv.getBackground();

            iv.getViewTreeObserver().addOnPreDrawListener(opdl);

    }

    OnPreDrawListener opdl=new OnPreDrawListener(){

 

            @Override

            public boolean onPreDraw() {

                    ad.start();

                    return true;

            }

 

    };

 

}



<?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/a1" android:duration="1500" />
    <item android:drawable="@drawable/a2" android:duration="1500" />
    <item android:drawable="@drawable/a3" android:duration="1500" />
 
</animation-list>





<ImageView 
android:layout_width="wrap_content" 
android:layout_height="wrap_content" 
android:id="@+id/animationImage"></ImageView>



评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值