AnimationSet類:動畫集合類
AnimationSet類:動畫集合類
AnimationSet類是Android系統中的動畫集合類,用于控制View對象進行多個動作的組合,該類繼承于Animation類。 AnimationSet類中的很多方法都與Animation類一致,該類中最常用的方法便是addAnimation方法,該方法用于為動畫集合對象 添加動畫對象。
【基本語法】public void addAnimation (Animation a)
其中,參數a為Animation動畫對象,可以是前述任何一種補間動作。
【實例演示】下面通過代碼來演示如何設置一個組合動畫效果。
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 translateAnimation=new TranslateAnimation(0,300,0,300); //設置位置變化動畫
final Animation scaleAnimation = new
ScaleAnimation(0f,1f,0f,1f,Animation.RELATIVE_TO_SELF,0.5f,Animation.RELATIVE_TO_SELF,0.5f);
//設置尺寸變化動畫
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
translateAnimation.setDuration(10000); //設置位置變化動畫的持續時間
scaleAnimation.setDuration(10000); //設置尺寸變化動畫的持續時間
alphaAnimation.setDuration(10000); //設置透明度漸變動畫的持續時間
AnimationSet set=new AnimationSet(true); //創建動畫集對象
set.addAnimation(translateAnimation); //添加位置變化動畫
set.addAnimation(scaleAnimation); //添加尺寸變化動畫
set.addAnimation(alphaAnimation); //添加透明度漸變動畫
set.setFillAfter(true); //停留在最后的位置
set.setFillEnabled(true);
image.setAnimation(set); //設置動畫
set.startNow(); //啟動動畫
}
});
btn2.setOnClickListener(new View.OnClickListener() { //設置監聽器
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
set.cancel(); //取消動畫執行
}
});
}
}
本文由用戶 lidki 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!