如何在android中使用不同的图像在启动画面上显示动画

时间:2012-09-10 12:16:08

标签: android animation splash-screen

我有几个徽标图像,我想在我的启动画面上显示一个完整的徽标就像拼图一样。我怎么能这样做。

我第一次使用它。任何人都可以帮助我。

三江源

2 个答案:

答案 0 :(得分:1)

package com.techipost.imageslider;

import android.app.Activity;
import android.os.Bundle;
import android.view.*;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView;
import android.os.Handler;
import java.util.Timer;
import java.util.TimerTask;
import com.techipost.imageslider.R;

public class SliderActivity extends Activity {

    public int currentimageindex=0;
    Timer timer;
    TimerTask task;
    ImageView slidingimage;

    private int[] IMAGE_IDS = {
            R.drawable.splash0, R.drawable.splash1, R.drawable.splash2,
            R.drawable.splash3
        };

    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.mygame);
        final Handler mHandler = new Handler();

        // Create runnable for posting
        final Runnable mUpdateResults = new Runnable() {
            public void run() {

                AnimateandSlideShow();

            }
        };

        int delay = 1000; // delay for 1 sec.

        int period = 8000; // repeat every 4 sec.

        Timer timer = new Timer();

        timer.scheduleAtFixedRate(new TimerTask() {

        public void run() {

             mHandler.post(mUpdateResults);

        }

        }, delay, period);



    }

    public void onClick(View v) {

        finish();
        android.os.Process.killProcess(android.os.Process.myPid());
      }

    /**
     * Helper method to start the animation on the splash screen
     */
    private void AnimateandSlideShow() {        

        slidingimage = (ImageView)findViewById(R.id.ImageView3_Left);
        slidingimage.setImageResource(IMAGE_IDS[currentimageindex%IMAGE_IDS.length]);

        currentimageindex++;

        Animation rotateimage = AnimationUtils.loadAnimation(this, R.anim.custom_anim);   

         // slidingimage.startAnimation(rotateimage);            

    }    


}

答案 1 :(得分:0)

尝试这种方式并保持AnimateandSlideShow()函数相同

   new CountDownTimer(1000,60000) {
                // 1000(1 sec interval time)
               // 250 (0.25 sec) 
        @Override
        public void onTick(long millisUntilFinished) {
            // TODO Auto-generated method stub

            AnimateandSlideShow();

        }

        @Override
        public void onFinish() {
            // TODO Auto-generated method stub

            // Call NextActivity

            Intent intent = new Intent(this,NewActivityName.class);
            intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
            startActivity(intent);
        }
    }.start();