android设置图片变化的四种效果代码
activity代码如下:
packagecom.example.chapter12_graphic_animation;
importandroid.os.Bundle;
importandroid.app.Activity;
importandroid.content.res.Resources;
importandroid.graphics.drawable.Drawable;
importandroid.view.Menu;
importandroid.view.View;
importandroid.view.View.OnClickListener;
importandroid.view.animation.AlphaAnimation;
importandroid.view.animation.Animation;
importandroid.view.animation.RotateAnimation;
importandroid.view.animation.ScaleAnimation;
importandroid.view.animation.TranslateAnimation;
importandroid.widget.Button;
importandroid.widget.ImageView;
publicclassMainActivityextendsActivity{
privateButtonb1,b2,b3,b4;
privateImageViewgirlImage;
publicvoidonCreate(BundlesavedInstanceState){
super.onCreate(savedInstanceState);
Resourcesres=getResources();
Drawabledrawable=res.getDrawable(R.drawable.test);
this.getWindow().setBackgroundDrawable(drawable);
setContentView(R.layout.main);
girlImage=(ImageView)findViewById(R.id.ImageView01);
b1=(Button)findViewById(R.id.Button01);
b2=(Button)findViewById(R.id.Button02);
b3=(Button)findViewById(R.id.Button03);
b4=(Button)findViewById(R.id.Button04);
b1.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewarg0){
//创建Scale尺寸变化动画
AnimationscaleAnimation=newScaleAnimation(0f,1f,0f,1f,
Animation.RELATIVE_TO_SELF,0.5f,
Animation.RELATIVE_TO_SELF,0.5f);
//设置动画持续的时常
scaleAnimation.setDuration(3000);
//开始动画
girlImage.startAnimation(scaleAnimation);
}
});
b2.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewarg0){
//创建Scale尺寸变化动画
AnimationalphaAnimation=newAlphaAnimation(0.1f,1.0f);
//设置动画持续的时常
alphaAnimation.setDuration(3000);
//开始动画
girlImage.startAnimation(alphaAnimation);
}
});
b3.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewarg0){
//创建Scale尺寸变化动画
AnimationtranslateAnimation=newTranslateAnimation(10,100,10,100);
//设置动画持续的时常
translateAnimation.setDuration(3000);
//开始动画
girlImage.startAnimation(translateAnimation);
}
});
b4.setOnClickListener(newOnClickListener(){
publicvoidonClick(Viewarg0){
//创建Scale尺寸变化动画
AnimationrotateAnimation=newRotateAnimation(0f,+360f,
Animation.RELATIVE_TO_SELF,0.5f,
Animation.RELATIVE_TO_SELF,0.5f);
//设置动画持续的时常
rotateAnimation.setDuration(3000);
//开始动画
girlImage.startAnimation(rotateAnimation);
}
});
}
//为按钮添加监听事件
@Override
publicbooleanonCreateOptionsMenu(Menumenu){
getMenuInflater().inflate(R.menu.main,menu);
returntrue;
}
}
XML代码设置如下:
<?xmlversion="1.0"encoding="utf-8"?>
<LinearLayoutxmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
>
<Button
android:id="@+id/Button01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TestScale.."/>
<Button
android:id="@+id/Button02"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TestAlpha..."/>
<Button
android:id="@+id/Button03"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TestTranslate..."/>
<Button
android:id="@+id/Button04"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="TestRotate..."/>
<ImageView
android:id="@+id/ImageView01"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:src="@drawable/girl"/>
</LinearLayout>
更多相关文章
- Android的jni下c与java数据互传测试代码
- android 动画的实现
- Android Audio代码分析14 - testPlaybackHeadPositionIncrease
- Android kill app Process 结束进程代码
- Android 工具代码
- android 页面切换动画效果 转
- Android View.startAnimation()动画