android四种动画

http://www.jb51.net/article/32339.htm

android中提供了4中动画:
AlphaAnimation 透明度动画效果
ScaleAnimation 缩放动画效果
TranslateAnimation 位移动画效果
RotateAnimation 旋转动画效果

本节讲解ScaleAnimation 动画,
ScaleAnimation(float
fromX, float toX, float fromY, float toY,int pivotXType, float
pivotXValue, int pivotYType, float pivotYValue)
参数说明:

复制代码 代码如下:

float fromX 动画起始时 X坐标上的伸缩尺寸
float toX 动画结束时 X坐标上的伸缩尺寸
float fromY 动画起始时Y坐标上的伸缩尺寸
float toY 动画结束时Y坐标上的伸缩尺寸
int pivotXType 动画在X轴相对于物件位置类型
float pivotXValue 动画相对于物件的X坐标的开始位置
int pivotYType 动画在Y轴相对于物件位置类型
float pivotYValue 动画相对于物件的Y坐标的开始位置

代码:

复制代码 代码如下:

public class MainActivity extends Activity {
ImageView image;
Button start;
Button cancel;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
image = (ImageView) findViewById(R.id.main_img);
start = (Button) findViewById(R.id.main_start);
cancel = (Button) findViewById(R.id.main_cancel);
/** 设置缩放动画 */
final ScaleAnimation animation =new ScaleAnimation(0.0f, 1.4f, 0.0f, 1.4f,
Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);
animation.setDuration(2000);//设置动画持续时间
/** 常用方法 */
//animation.setRepeatCount(int repeatCount);//设置重复次数
//animation.setFillAfter(boolean);//动画执行完后是否停留在执行完的状态
//animation.setStartOffset(long startOffset);//执行前的等待时间
start.setOnClickListener(new OnClickListener() {
public void onClick(View arg0) {
image.setAnimation(animation);
/** 开始动画 */
animation.startNow();
}
});
cancel.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
/** 结束动画 */
animation.cancel();
}
});
}
}

android四种动画,布布扣,bubuko.com

时间: 2024-08-27 02:53:15

android四种动画的相关文章

Android三种动画原理

Android起初有两种动画:Frame Animation(逐帧动画) Tween Animation(补间动画) 两种动画的工作原理: Frame Animation:大体意思就是将UI设计的多张图片组成的动画,然后在将他们组合起来连贯进行播放,类似于早期电影的工作原理. Tween Animation:是对某个View进行一系列的动画的操作,包括淡入淡出(Alpha),缩放(Scale),平移(Translate),旋转(Rotate)四种模式 然而在从Android3.0版本开始后,An

使用AnimateWindow来实现窗口淡入淡出(主要有四种动画,滚动,滑动,折叠或展开,和淡入淡出)

如果是在VC6下进行编译,应引入下面的预编译宏,注意放在windows.h的前面#undef  WINVER   #define  WINVER   0x500为什么要引入上面的宏呢?看看winuser.h里面该API的声明就明白了:#if(WINVER >= 0x0500)WINUSERAPIBOOLWINAPIAnimateWindow(    HWND hWnd,    DWORD dwTime,    DWORD dwFlags);#endif /* WINVER >= 0x0500

Android 四种LaunchMode

Activity的四种launchMode. launchMode在多个Activity跳转的过程中扮演着重要的角色,它可以决定是否生成新的Activity实例,是否重用已存在的Activity实例,是否和其他Activity实例公用一个task里.这里简单介绍一下task的概念,task是一个具有栈结构的对象,一个task可以管理多个Activity,启动一个应用,也就创建一个与之对应的task. Activity一共有以下四种launchMode: 1.standard 2.singleTo

Android 四种常见的线程池

引入线程池的好处 1)提升性能.创建和消耗对象费时费CPU资源 2)防止内存过度消耗.控制活动线程的数量,防止并发线程过多. 我们来看一下线程池的简单的构造 public ThreadPoolExecutor(int corePoolSize, int maximumPoolSize, long keepAliveTime, TimeUnit unit, BlockingQueue workQueue, ThreadFactory threadFactory, RejectedExecution

Android——四种AterDialog

本经验将分别介绍Android里面的四种AlertDialog分别是:显示带中立,取消,确定的提示框. 获取带列表的对话框按钮.获取带单选列表的对话框按.获取显示带多选项的对话框.此经验介绍获取显示带多选项的对话框 Android studio或者Eclipse 首先我们在界面布局上面布局四个按钮 然后我们在代码中关联这四个按钮 Button button3=(Button)findViewById(R.id.button3); Button button4=(Button)findViewBy

Android四种Activity的加载模式(转)

建议首先阅读下面两篇文章,这样才可以更好的理解Activity的加载模式: Android的进程,线程模型: http://www.cnblogs.com/ghj1976/archive/2011/04/28/2031586.html 其中对“Android的单线程模型”的描述,明白Activity的一些注意事项. Android Application Task Activities的关系  http://www.cnblogs.com/ghj1976/archive/2011/04/29/2

CAAnimation四种动画

在上一篇专题中我们提到,CAAnimation可分为以下四种: 1 2 3 4 5 6 7 8 1.CABasicAnimation 通过设定起始点,终点,时间,动画会沿着你这设定点进行移动.可以看做特殊的CAKeyFrameAnimation 2.CAKeyframeAnimation Keyframe顾名思义就是关键点的frame,你可以通过设定CALayer的始点.中间关键点.终点的frame,时间,动画会沿你设定的轨迹进行移动 3.CAAnimationGroup Group也就是组合的

Android 四种点击监听方式

Android点击监听事件经常用到,经常用到的有以下几种 第一种:最常用到的,通过实现OnClickListen,实现OnClick方法去实现 public class MainActivity extends Activity implements OnClickListener // 用实现接口的方式实现点击 button1 = (Button) findViewById(R.id.button1); button1.setOnClickListener(this); @Override p

Android 四种绑定监听事件的方式

1. 直接通过id查找后,绑定匿名内部类作为事件监听类.代码如下: Button loginButton = (Button) findViewById(R.id.tologin1); btn1.setOnclickListener(new OnclickListener(){ public void onClick(View v){ // 要执行的操作 } }); 这种方法有好也有不好,好的是比较直观方便,不好的是,如果按钮多了,代码看起来比较乱. 2. 实现点击事件的接口,然后一个个按钮地去