Animações travando no Android Studio

Pessoal, sou iniciante de Android, e executo minhas aplicações diretamente pelo meu Celular. Uso o Android Studio 2.3.3
Recentemente eu sofro de um problema que nao consigo resolver. Toda vez que eu coloco uma imagens com animações, ou ate mesmo no ListView no meu aplicativo, toda vez que eu executo, a aplicação fica Travando e Lenta.Quando eu tiro as imagens, o aplicativo fica mais fluido. Alguém pode me dizer o porque que isso ocorre e como resolver?

Ex: Splashscreen

Splashscreen.java


import android.app.Activity;
import android.content.Intent;
import android.graphics.PixelFormat;
import android.os.Bundle;
import android.view.Window;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.ImageView;
import android.widget.LinearLayout;

public class Splashscreen extends Activity {
public void onAttachedToWindow() {
super.onAttachedToWindow();
Window window = getWindow();
window.setFormat(PixelFormat.RGBA_8888);
}
/** Called when the activity is first created. */
Thread splashTread;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_splashscreen);
StartAnimations();
}
private void StartAnimations() {
Animation anim = AnimationUtils.loadAnimation(this, R.anim.alpha);
anim.reset();
LinearLayout l=(LinearLayout) findViewById(R.id.lin_lay);
l.clearAnimation();
l.startAnimation(anim);

    anim = AnimationUtils.loadAnimation(this, R.anim.translate);
    anim.reset();
    ImageView iv = (ImageView) findViewById(R.id.splash);
    iv.clearAnimation();
    iv.startAnimation(anim);

    splashTread = new Thread() {
        @Override
        public void run() {
            try {
                int waited = 0;
                // Splash screen pause time
                while (waited < 3500) {
                    sleep(100);
                    waited += 100;
                }
                Intent intent = new Intent(Splashscreen.this,
                        MainActivity.class);
                intent.setFlags(Intent.FLAG_ACTIVITY_NO_ANIMATION);
                startActivity(intent);
                Splashscreen.this.finish();
            } catch (InterruptedException e) {
                // do nothing
            } finally {
                Splashscreen.this.finish();
            }

        }
    };
    splashTread.start();

}

}

=============================================

layout/activity_splashscreen.xml

<?xml version="1.0" encoding="utf-8"?>

<ImageView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/splash"
    android:background="@drawable/splash_img" />

=============================================

anim/alpha.xml

<?xml version="1.0" encoding="utf-8"?>

=============================================

anim/translate.xml

<?xml version="1.0" encoding="utf-8"?>

<translate
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:fromXDelta="0%"
    android:toXDelta="0%"
    android:fromYDelta="200%"
    android:toYDelta="0%"
    android:duration="1000"
    android:zAdjustment="top" />

=============================================

AndroidManifest.xml


    <activity android:name=".Splashscreen"
        android:label="@string/app_name">
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />

            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>