如何创建这样的动画启动画面

时间:2016-08-10 11:49:56

标签: android android-studio animation splash-screen

Example

我需要制作这样的动画闪屏。你能救我吗?

3 个答案:

答案 0 :(得分:3)

一种方法是使用Tween Animation,如下所示。在您的情况下需要多个anim文件

Animation animation = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.myanimation);

如果您必须为白色圆圈图像设置动画,请执行以下操作

ImageView image = (ImageView)findViewById(R.id.imageView);
      Animation animation1 = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.move);
      image.startAnimation(animation1);

现在您需要在res / anim / move.xml

中创建anim文件
<?xml version="1.0" encoding="utf-8"?>
<set
   xmlns:android="http://schemas.android.com/apk/res/android"
   android:interpolator="@android:anim/linear_interpolator"
   android:fillAfter="true">

   <translate
      android:fromXDelta="0%p"
      android:toXDelta="75%p"
      android:duration="800" />
</set>

这是一个例子。您需要找到根据您的要求修改这些基本动画的方法。有关详情,请参阅this链接

答案 1 :(得分:3)

使用gif作为启动画面。 在build.gradle文件中:

compile 'pl.droidsonroids.gif:android-gif-drawable:1.1.+'

在您的活动布局中:

<pl.droidsonroids.gif.GifImageView
    android:id="@+id/gifView"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:src="@drawable/gif"
    />

最后在你的班级档案中:

private static int SPLASH_TIME_OUT = 1500;
private boolean isInFront;
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_splash_gif);
    new Handler().postDelayed(new Runnable() {

        @Override
        public void run() {
            // This method will be executed once the timer is over

            if(isInFront)
            {
                // Start your app main activity
                Intent i = new Intent(SplashScreen_Gif.this, MainMenuActivity.class);
                startActivity(i);
            }

            // close this activity
            finish();
        }
    }, SPLASH_TIME_OUT);
}

答案 2 :(得分:0)

您可以使用这样的gif图像并在启动画面上使用它而不是普通的jpg或png图像