国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android旋轉、平移、縮放和透明度漸變的補間動畫

2019-10-22 18:12:23
字體:
來源:轉載
供稿:網友

android實現旋轉、平移、縮放和透明度漸變的補間動畫,具體實現如下:

1.在新建項目的res目錄中,創建一個名為anim的目錄,并在該目錄中創建實現旋轉、平移、縮放和透明度漸變的動畫資源文件。

透明度漸變的動畫資源文件anim_alpha.xml(完全不透明->完全透明->完全不透明)

<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android">  <alpha android:fromAlpha="1"  android:toAlpha="0"  android:fillAfter="true"  android:repeatMode="reverse"  android:repeatCount="1"  android:duration="2000"/> </set> 

旋轉的動畫資源文件anim_rotate.xml(0度->720度->360度->0度)

<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android">  <rotate  android:interpolator="@android:anim/accelerate_interpolator"  android:fromDegrees="0"  android:toDegrees="720"  android:pivotX="50%"  android:pivotY="50%"  android:duration="2000"/>  <rotate  android:interpolator="@android:anim/accelerate_interpolator"  android:startOffset="2000"  android:fromDegrees="360"  android:toDegrees="0"  android:pivotX="50%"  android:pivotY="50%"  android:duration="2000"/> </set> 

縮放動畫資源文件anim_scale.xml(放大2倍->收縮回來)

<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android">  <scale android:fromXScale="1"  android:interpolator="@android:anim/decelerate_interpolator"  android:fromYScale="1"  android:toXScale="2.0"  android:toYScale="2.0"  android:pivotX="50%"  android:pivotY="50%"  android:fillAfter="true"  android:repeatCount="1"  android:repeatMode="reverse"  android:duration="2000"/>  </set> 

平移動畫資源文件anim_translate.xml(屏幕左側->屏幕右側->屏幕左側)

<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android">  <translate  android:fromXDelta="0"  android:toXDelta="860"  android:fromYDelta="0"  android:toYDelta="0"  android:fillAfter="true"  android:repeatMode="reverse"  android:repeatCount="1"  android:duration="2000"/> </set> 

主界面資源文件:

res/layout/main.xml:[html] view plain copy<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"  xmlns:tools="http://schemas.android.com/tools"  android:layout_width="fill_parent"  android:layout_height="fill_parent"  android:id="@+id/linearLayout1"  android:orientation="vertical"  >  <LinearLayout  android:layout_width="fill_parent"  android:layout_height="wrap_content"  android:id="@+id/linearLayout2"  android:orientation="horizontal">  <Button android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:id="@+id/button1"  android:text="旋轉"/>  <Button android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:id="@+id/button2"  android:text="平移"/>  <Button android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:id="@+id/button3"  android:text="縮放"/>  <Button android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:id="@+id/button4"  android:text="透明度變化"/>  </LinearLayout>  <ImageView android:layout_width="wrap_content"  android:layout_height="wrap_content"  android:id="@+id/imageView1"  android:src="@drawable/img1"/> </LinearLayout>

效果如圖

android,旋轉動畫,android平移,android縮放,android透明度漸變

2.MainActivity:

在onCreat()方法中,首先獲取動畫資源文件中創建的動畫資源,然后獲取要應用動畫效果的ImageView,再獲取“旋轉”按鈕,并為該按鈕添加單擊事件監聽器,在重寫onClik()方法中,播放動畫。具體代碼如下:

[java] view plain copypackage com.example.test;  import android.app.Activity; import android.os.Bundle; import android.view.View; import android.view.View.OnClickListener; import android.view.animation.Animation; import android.view.animation.AnimationUtils; import android.widget.Button; import android.widget.ImageView;  public class MainActivity extends Activity {   @Override  public void onCreate(Bundle savedInstanceState) {  super.onCreate(savedInstanceState);  setContentView(R.layout.main);   final Animation rotate=AnimationUtils.loadAnimation(this, R.anim.anim_rotate);//獲取旋轉動畫資源  final Animation translate=AnimationUtils.loadAnimation(this, R.anim.anim_translate);//獲取平移動畫資源  final Animation scale=AnimationUtils.loadAnimation(this, R.anim.anim_scale);//獲取縮放動畫資源  final Animation alpha=AnimationUtils.loadAnimation(this, R.anim.anim_alpha);//獲取透明度變化動畫資源  //獲取要應用動畫效果的ImageView  final ImageView iv=(ImageView)findViewById(R.id.imageView1);  Button button1=(Button)findViewById(R.id.button1);//獲取"旋轉"按鈕  button1.setOnClickListener(new OnClickListener() {   @Override  public void onClick(View arg0) {  //播放旋轉動畫  iv.startAnimation(rotate);   }  });   Button button2=(Button)findViewById(R.id.button2);//獲取"平移"按鈕  button2.setOnClickListener(new OnClickListener() {   @Override  public void onClick(View arg0) {  //播放平移動畫  iv.startAnimation(translate);   }  });   Button button3=(Button)findViewById(R.id.button3);//獲取"縮放"按鈕  button3.setOnClickListener(new OnClickListener() {   @Override  public void onClick(View arg0) {  //播放縮放動畫  iv.startAnimation(scale);   }  });   Button button4=(Button)findViewById(R.id.button4);//獲取"透明度漸變"按鈕  button4.setOnClickListener(new OnClickListener() {   @Override  public void onClick(View arg0) {  //播放透明度漸變動畫  iv.startAnimation(alpha);  }  });  } } 

效果如圖1、圖2、圖3、圖4:

android,旋轉動畫,android平移,android縮放,android透明度漸變android,旋轉動畫,android平移,android縮放,android透明度漸變

android,旋轉動畫,android平移,android縮放,android透明度漸變

android,旋轉動畫,android平移,android縮放,android透明度漸變

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對VEVB武林網的支持。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 涿鹿县| 上虞市| 盐城市| 平顶山市| 西贡区| 商水县| 泗阳县| 井研县| 元谋县| 乐陵市| 东海县| 清原| 黄梅县| 军事| 漯河市| 焦作市| 景洪市| 宝坻区| 宁安市| 合山市| 齐齐哈尔市| 县级市| 营口市| 腾冲县| 三都| 台东县| 独山县| 南陵县| 尖扎县| 洪泽县| 鱼台县| 长白| 临汾市| 阜阳市| 仁怀市| 志丹县| 祥云县| 赞皇县| 翁源县| 原平市| 呈贡县|