package com.konka.music.util;
import java.util.ArrayList;
import android.content.Context;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.Animation.AnimationListener;
import android.view.animation.AnimationSet;
import android.view.animation.RotateAnimation;
import android.view.animation.TranslateAnimation;
import android.widget.ImageView;
import com.konka.music.R;
import com.konka.music.pojo.MusicInfo;
import com.konka.music.service.MusicInfoManager;
public class AnimationUtil {
public static void playAnimotion_playThisMusic(final Context context, float fromXDelta, float fromYDelta, final MusicInfo musicInfo, final ImageView imageview) {
AnimationSet animationSet = new AnimationSet(true);
Animation translateAnimation = new TranslateAnimation(fromXDelta - (imageview.getWidth() >> 1), fromXDelta - (imageview.getWidth() >> 1), fromYDelta, 800f);
animationSet.addAnimation(translateAnimation);
animationSet.setDuration(800);
animationSet.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
imageview.setImageResource(R.drawable.music_note);
imageview.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationEnd(Animation animation) {
imageview.setVisibility(View.GONE);
MusicInfoManager.addMusic2PlayList(context, musicInfo, true);
}
@Override
public void onAnimationRepeat(Animation arg0) {
}
});
imageview.startAnimation(animationSet);
}
public static void playAnimotion_playAllMusic(final Context context, float fromXDelta, float fromYDelta, final ArrayList<MusicInfo> musicInfos, final ImageView imageview) {
AnimationSet animationSet = new AnimationSet(true);
Animation translateAnimation = new TranslateAnimation(fromXDelta - (imageview.getWidth() >> 1), fromXDelta - (imageview.getWidth() >> 1), fromYDelta, 800f);
animationSet.addAnimation(translateAnimation);
animationSet.setDuration(1000);
animationSet.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
imageview.setImageResource(R.drawable.music_note);
imageview.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationEnd(Animation animation) {
imageview.setVisibility(View.GONE);
MusicInfoManager.addMusicInfoArray(context, musicInfos, true);
}
@Override
public void onAnimationRepeat(Animation arg0) {
}
});
imageview.startAnimation(animationSet);
}
public static void playAnimotion_insert(final Context context, float fromXDelta, float fromYDelta, final ImageView imageview) {
AnimationSet animationSet = new AnimationSet(true);
// 初始化
Animation translateAnimation = new TranslateAnimation(fromXDelta - (imageview.getWidth() >> 1), 240f, fromYDelta-(imageview.getHeight()>>1), 800f);
// 设置动画时间
RotateAnimation rotateAnimation = new RotateAnimation(0, 180, Animation.RELATIVE_TO_SELF, 1f, Animation.RELATIVE_TO_SELF, 1f);
animationSet.addAnimation(rotateAnimation);
animationSet.addAnimation(translateAnimation);
animationSet.setDuration(1000);
animationSet.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
imageview.setImageResource(R.drawable.insert_play_note);
imageview.setVisibility(View.VISIBLE);
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
imageview.setVisibility(View.GONE);
ToastUtil.showToast(context, "已加入到播放列表");
}
});
imageview.startAnimation(animationSet);
}
}