android动画Scale+Translate

/**
 *  移动缩小动画
 * @author 岳振华
 *
 */
@SuppressWarnings("unused")
public class MainActivity extends Activity {
private Animation myAnimation;
    private ImageView imageView;
private ScaleAnimation myAnimation_Scale;//移动动画
private TranslateAnimation myAnimation_Translate;//缩放动画


@Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);    
       // imageView=(ImageView) this.findViewById(R.id.main_img);
        
        LinearLayout linearLayout=(LinearLayout) this.findViewById(R.id.layout_main);
        
        imageView=new ImageView(this);
        
        //xml方法实现
       // myAnimation= AnimationUtils.loadAnimation(this,R.anim.scal);
        
        //移动
         myAnimation_Scale =new ScaleAnimation(1.0f, //动画起始时 X坐标上的伸缩尺寸
                                      0.0f,//动画结束时 X坐标上的伸缩尺寸
                                      1.0f, //动画起始时Y坐标上的伸缩尺寸
                                      0.0f,//动画结束时Y坐标上的伸缩尺寸 
                                              Animation.RELATIVE_TO_SELF,//
                                              0.5f,//动画相对于物件的X坐标的开始位置
                                              Animation.RELATIVE_TO_SELF, //
                                              1.0f);//动画相对于物件的Y坐标的开始位置
         myAnimation_Scale.setFillAfter(true);
         myAnimation_Scale.setDuration(2000);
         
         //缩放
         myAnimation_Translate=new TranslateAnimation(160f,//动画起始时 X坐标上的位置
                                             320f,//画结束时 X坐标上的位置
                                             240f,//动画起始时 Y坐标上的位置
                                             0f);//动画结束时 Y坐标上的位置
         myAnimation_Translate.setFillAfter(true);
         myAnimation_Translate.setDuration(2000);
         
         
         AnimationSet animationSet=new AnimationSet(true);
         animationSet.addAnimation(myAnimation_Scale);
         animationSet.addAnimation(myAnimation_Translate);
         
         animationSet.setAnimationListener(new AnimationListener() {

@Override
public void onAnimationStart(Animation animation) {

}

@Override
public void onAnimationRepeat(Animation animation) {

}

@Override
public void onAnimationEnd(Animation animation) {
imageView.setVisibility(View.GONE);
}
});
        imageView.setBackgroundResource(R.drawable.icon);
        imageView.startAnimation(animationSet);
        LinearLayout.LayoutParams params=new LinearLayout.LayoutParams(LayoutParams.WRAP_CONTENT,LayoutParams.WRAP_CONTENT);
        linearLayout.addView(imageView,params);
        
    }
}
posted @ 2012-09-07 10:14  retacn_yue  阅读(163)  评论(0编辑  收藏  举报