zoukankan      html  css  js  c++  java
  • ScaleAnimation类:尺寸变化动画类

    9.4  ScaleAnimation类:尺寸变化动画类

    ScaleAnimation类是Android系统中的尺寸变化动画类,用于控制View对象的尺寸变化,该类继承于Animation类。ScaleAnimation类中的非常多方法都与Animation类一致,该类中最经常使用的方法便是ScaleAnimation构造方法。

    【基本的语法】public ScaleAnimation (float fromX, float toX, float fromY, float toY, int pivotXType, float pivotXValue, int pivotYType, float pivotYValue)

    參数说明

    fromX:起始X坐标上的伸缩尺寸。

    toX:结束X坐标上的伸缩尺寸。

    fromY:起始Y坐标上的伸缩尺寸。

    toY:结束Y坐标上的伸缩尺寸。

    pivotXType:X轴的伸缩模式,能够取值为ABSOLUTE、RELATIVE_TO_SELF、RELATIVE_TO_PARENT。

    pivotXValue:X坐标的伸缩值。

    pivotYType:Y轴的伸缩模式,能够取值为ABSOLUTE、RELATIVE_TO_SELF、RELATIVE_TO_PARENT。

    pivotYValue:Y坐标的伸缩值。

    【实例演示】以下通过代码来演示怎样设置一个简单的尺寸变化动画效果。

    1. public class firstActivity extends Activity {  
    2. /** Called when the activity is first created. */  
    3. @Override  
    4. public void onCreate(Bundle savedInstanceState) {           //重载onCreate方法  
    5.     super.onCreate(savedInstanceState);  
    6.     setContentView(R.layout.main);  
    7.  
    8.     final ImageView image=(ImageView)findViewById(R.id.imageView1); //ImageView对象  
    9.     Button btn1=(Button)findViewById(R.id.button1);         //按钮对象  
    10.     Button btn2=(Button)findViewById(R.id.button2);  
    11.     final Animation scaleAnimationnew   
    12.      ScaleAnimation(0f,1f,0f,1f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);  
    13.                                                         //设置尺寸变化动画对象  
    14.     btn1.setOnClickListener(new View.OnClickListener() {        //设置监听器  
    15.           
    16.         @Override  
    17.         public void onClick(View v) {  
    18.             // TODO Auto-generated method stub  
    19.             scaleAnimation.setDuration(2000);               //动画持续时间  
    20.             image.setAnimation(scaleAnimation);         //设置动画  
    21.             scaleAnimation.startNow();                      //启动动画  
    22.         }  
    23.     });  
    24.     btn2.setOnClickListener(new View.OnClickListener() {        //设置监听器  
    25.           
    26.         @Override  
    27.         public void onClick(View v) {  
    28.             // TODO Auto-generated method stub  
    29.             scaleAnimation.cancel();                        //取消动画运行  
    30.         }  
    31.     });  
    32. }  
    33. }  

    在这段代码中,首先通过ScaleAnimation构造方法创建了一个尺寸变化的动画对象。然后,在第一个button监听器中设置了动画的持续时间,之后启动该动画。在第二个button监听器中取消该动画。读者执行这段代码,将看到图片从小到大逐渐变化,如图9.9所看到的。最后,图片增大到原始尺寸的时候停止,如图9.10所看到的。
     
    图9.9  尺寸变化动画
     
    图9.10  原始尺寸图片
  • 相关阅读:
    【流量劫持】SSLStrip 终极版 —— location 瞒天过海
    【流量劫持】沉默中的狂怒 —— Cookie 大喷发
    【流量劫持】SSLStrip 的未来 —— HTTPS 前端劫持
    Web 前端攻防(2014版)
    流量劫持 —— 浮层登录框的隐患
    流量劫持能有多大危害?
    流量劫持是如何产生的?
    XSS 前端防火墙 —— 整装待发
    XSS 前端防火墙 —— 天衣无缝的防护
    XSS 前端防火墙 —— 无懈可击的钩子
  • 原文地址:https://www.cnblogs.com/bhlsheji/p/4283049.html
Copyright © 2011-2022 走看看