android 缩放透明动画,Android旋转、平移、缩放和透明度渐变的补间动画
android實現旋轉、平移、縮放和透明度漸變的補間動畫,具體實現如下:
1.在新建項目的res目錄中,創建一個名為anim的目錄,并在該目錄中創建實現旋轉、平移、縮放和透明度漸變的動畫資源文件。
透明度漸變的動畫資源文件anim_alpha.xml(完全不透明->完全透明->完全不透明)
android:toAlpha="0"
android:fillAfter="true"
android:repeatMode="reverse"
android:repeatCount="1"
android:duration="2000"/>
旋轉的動畫資源文件anim_rotate.xml(0度->720度->360度->0度)
android:interpolator="@android:anim/accelerate_interpolator"
android:fromDegrees="0"
android:toDegrees="720"
android:pivotX="50%"
android:pivotY="50%"
android:duration="2000"/>
android:interpolator="@android:anim/accelerate_interpolator"
android:startOffset="2000"
android:fromDegrees="360"
android:toDegrees="0"
android:pivotX="50%"
android:pivotY="50%"
android:duration="2000"/>
縮放動畫資源文件anim_scale.xml(放大2倍->收縮回來)
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"/>
平移動畫資源文件anim_translate.xml(屏幕左側->屏幕右側->屏幕左側)
android:fromXDelta="0"
android:toXDelta="860"
android:fromYDelta="0"
android:toYDelta="0"
android:fillAfter="true"
android:repeatMode="reverse"
android:repeatCount="1"
android:duration="2000"/>
主界面資源文件:
res/layout/main.xml:
[html] view plain copy
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:id="@+id/linearLayout1"
android:orientation="vertical"
>
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:id="@+id/linearLayout2"
android:orientation="horizontal">
android:layout_height="wrap_content"
android:id="@+id/button1"
android:text="旋轉"/>
android:layout_height="wrap_content"
android:id="@+id/button2"
android:text="平移"/>
android:layout_height="wrap_content"
android:id="@+id/button3"
android:text="縮放"/>
android:layout_height="wrap_content"
android:id="@+id/button4"
android:text="透明度變化"/>
android:layout_height="wrap_content"
android:id="@+id/imageView1"
android:src="@drawable/img1"/>
效果如圖
2.MainActivity:
在onCreat()方法中,首先獲取動畫資源文件中創建的動畫資源,然后獲取要應用動畫效果的ImageView,再獲取“旋轉”按鈕,并為該按鈕添加單擊事件監聽器,在重寫onClik()方法中,播放動畫。具體代碼如下:
[java] view plain copy
package 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旋转、平移、缩放和透明度渐变的补间动画的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: RTX 3060登顶Steam神卡 AM
- 下一篇: 方舟生存进化甲壳素哪里多(生存进化专区)