[Android動畫] 補間動畫-透明度變化動畫類( AlphaAnimation)五

AlphaAnimation類是Android系統中的透明度變化動畫類,用於控制View對象的透明度變化,該類繼承於Animation類。 AlphaAnimation類中的不少方法都與Animation類一致,該類中最經常使用的方法即是AlphaAnimation構造方法。ide

【基本語法】public AlphaAnimation (float fromAlpha, float toAlpha)動畫

參數說明spa

fromAlpha:開始時刻的透明度,取值範圍0~1。code

toAlpha:結束時刻的透明度,取值範圍0~1。對象

【實例演示】下面經過代碼來演示如何設置一個簡單的漸變透明度動畫效果。繼承

public class firstActivity extends Activity {  
/** Called when the activity is first created. */  
@Override  
public void onCreate(Bundle savedInstanceState) {               //重載onCreate方法  
    super.onCreate(savedInstanceState);  
    setContentView(R.layout.main);  
 
    final ImageView image=(ImageView)findViewById(R.id.imageView1); //ImageView對象  
    Button btn1=(Button)findViewById(R.id.button1);             //按鈕對象  
    Button btn2=(Button)findViewById(R.id.button2);  
    final Animation alphaAnimation=new AlphaAnimation(0.1f,1.0f);   //設置透明度動畫效果  
    btn1.setOnClickListener(new View.OnClickListener() {            //設置監聽器  
          
        @Override  
        public void onClick(View v) {  
            // TODO Auto-generated method stub  
            alphaAnimation.setDuration(30000);                  //設置持續時間  
            image.setAnimation(alphaAnimation);             //設置動畫  
            alphaAnimation.startNow();                          //啓動動畫  
        }  
    });  
    btn2.setOnClickListener(new View.OnClickListener() {            //設置監聽器  
          
        @Override  
        public void onClick(View v) {  
            // TODO Auto-generated method stub  
            scaleAnimation.cancel();                            //取消動畫執行  
        }  
    });  
}  
}

在這段代碼中,首先經過AlphaAnimation構造方法建立了一個透明度變化的動畫對象。而後,在第一個按鈕監聽器中設置了動畫的持 續時間,以後啓動該動畫。在第二個按鈕監聽器中取消該動畫。讀者運行這段代碼,將看到圖片的透明度由淺入深逐漸變化,如圖9.11所示。最後,圖片變爲完 全不透明的時候中止,如圖9.12所示。圖片

 
圖9.11  透明度漸變更畫
 
圖9.12  圖片原始透明度
相關文章
相關標籤/搜索