1. scale :缩放
实现效果:
在res文件夹下新建文件夹anim下新建XML文件
<?xml version="1.0" encoding="utf-8"?>
<scale xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXScale="100%"
android:toXScale="50%"
android:fromYScale="100%"
android:toYScale="50%"
android:pivotY="50%"
android:pivotX="50%"
android:duration="1000"
android:fillAfter="true"></scale>
android:fromXScale="100%" (图片里X坐标开始的缩放比)
android:toXScale="50%" (图片里X坐标结束的缩放比)
android:fromYScale="100%" (图片里Y坐标开始的缩放比)
android:toYScale="50%" (图片里Y坐标结束的缩放比)
android:pivotY="50%" (动画结束时图片的Y坐标位置)
android:pivotX="50%" (动画结束时图片的X坐标位置)
android:duration="1000" (执行时长)
android:fillAfter="true" (是否保留动画结束状态)
2. translate:移动
实现效果:
同上在anim文件夹下新建XML文件
<?xml version="1.0" encoding="utf-8"?>
<translate xmlns:android="http://schemas.android.com/apk/res/android"
android:fromXDelta="0"
android:toXDelta="50%"
android:fromYDelta="0"
android:toYDelta="30%"
android:duration="1000"
android:fillAfter="true"></translate>
translate属性:
android:fromXDelta="0" (图片在界面开始移动时的X坐标)
android:toXDelta="50%"(图片在界面结束移动是的X坐标) android:fromYDelta="0" (图片在界面结束移动是的Y坐标) android:toYDelta="30%"(图片在界面结束移动是的Y坐标) android:duration="1000" (执行时长)
android:fillAfter="true" (是否保留动画结束时的状态)
两个效果一起实现的代码如下:
package com.example.g160628_android_17_animation;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.view.View;
import android.view.animation.Animation;
import android.view.animation.AnimationUtils;
import android.widget.Button;
import android.widget.ImageView;
public class MainActivity extends AppCompatActivity {
private ImageView imageView;
private Button alpha;
private Button rotate;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
imageView = (ImageView) findViewById(R.id.main_image);
}
public void operation(View view){
switch (view.getId()){
case R.id.but_main_scale:
Animation animation2=AnimationUtils.loadAnimation(this,R.anim.iv_scale);
imageView.startAnimation(animation2);
break;
case R.id.but_main_translate:
Animation animation3= AnimationUtils.loadAnimation(this,R.anim.iv_translate);
imageView.startAnimation(animation3);
break;
}
}
}