Android Property Animation属性动画:scale缩放动画(4)

news/2024/7/5 11:09:16


Android Property Animation属性动画:scale缩放动画(4)


和之前我写的附录文章1,2,3相似,本文将接着使用Android Property Animation属性动画实现一个缩放的动画。代码部分和文章1,2,3中的代码大同小异,无非就是参数值不同和中间需要过度的value需要根据实际开发场景设定。

package zhangphil.anim;import android.animation.ObjectAnimator;
import android.animation.ValueAnimator;
import android.animation.ValueAnimator.AnimatorUpdateListener;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
import android.widget.TextView;public class MainActivity extends Activity {private TextView text;@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);text = (TextView) findViewById(R.id.text);}// 动画实际执行private void startPropertyAnim() {// 将一个TextView沿垂直方向先从原大小(1f)放大到5倍大小(5f),然后再变回原大小。ObjectAnimator anim = ObjectAnimator.ofFloat(text, "scaleY", 1f, 5f, 1f);anim.setDuration(5000);// 回调监听,可以有也可以无。// 根据情况,如果需要监听动画执行到何种“进度”,那么就监听之。anim.addUpdateListener(new AnimatorUpdateListener() {@Overridepublic void onAnimationUpdate(ValueAnimator animation) {float value = (Float) animation.getAnimatedValue();Log.d("zhangphil", value + "");}});// 正式开始启动执行动画anim.start();}@Overridepublic boolean onOptionsItemSelected(MenuItem item) {int id = item.getItemId();if (id == R.id.action_anim) {// 此处正式启动属性动画startPropertyAnim();return true;}return super.onOptionsItemSelected(item);}@Overridepublic boolean onCreateOptionsMenu(Menu menu) {getMenuInflater().inflate(R.menu.main, menu);return true;}
}


附录文章:
1,《Android Property Animation属性动画初识:透明渐变(1)》链接地址:http://blog.csdn.net/zhangphil/article/details/50484224 
2,《Android Property Animation属性动画:rotation旋转(2)》链接地址:http://blog.csdn.net/zhangphil/article/details/50495555
3,《Android Property Animation属性动画初识:位移translation(3)》链接地址:http://blog.csdn.net/zhangphil/article/details/50495844

 


http://lihuaxi.xjx100.cn/news/257601.html

相关文章

Matlab与线性代数 -- 均匀分布的随机矩阵

本微信图文详细介绍了Matlab中均匀分布的随机矩阵函数rand、rands、randperm。

Nginx配置反向代理,一篇搞定!

欢迎关注方志朋的博客,回复”666“获面试宝典来源:blog.csdn.net/zxd1435513775/article/details/102508463一、引言其他话不多说,下面来学习一下 Nginx 的反向代理。需要有 Linux 和 Nginx 环境。二、何为反向代理?在介绍反向代理…

利用 OpenCV+ConvNets 检测几何图形

作者 | 小白 来源 | 小白学视觉 导读 人工智能领域中增长最快的子领域之一是自然语言处理(NLP),它处理计算机与人类(自然)语言之间的交互,特别是如何编程计算机以处理和理解大量自然语言数据。 自然语言处理…

Matlab与机器学习 -- BP网络神经元上的转移函数

本图文详细介绍了BP神经网络常用的转移函数及其导数,单极性Sigmoid函数,双极性Sigmoid函数,线性函数。

golang垃圾回收概述

golang垃圾回收 golang的垃圾回收机制已经迭代过好几次了,主要的几个演进过程如下: v1.0版本中使用标记和清除算法,需要再整个gc过程中暂定程序。V1.5版本中实现了三色标记清除的并发垃圾回收。v1.8使用混合写屏障技术提升了垃圾收集的时间…

一个「菜鸟」转行AI的成长心得!

↑↑↑关注后"星标"Datawhale每日干货 & 每月组队学习,不错过Datawhale干货 作者:太子长琴,算法工程师本文是一个转行四年的「菜鸟」的成长心得,围绕真实工作场景中,AI算法工程师是如何从头到尾完成一个…

AI大牛李沐装机视频来了!你也能练100亿的大模型

视学算法报道 编辑:Aeneas 拉燕 桃子【导读】AI大牛李沐带你来装机!AI大牛沐神来装机了,还是训练100亿参数模型那种。在还没出装机视频前,李沐老师曾发起了一个小小的问卷调查,趁着显卡降价,看下童鞋们对装…

类加载器双亲委派模式

双亲委派模型的工作流程是:如果一个类加载器收到了类加载的请求,它首先不会自己去尝试加载这个类,而是把请求委托给父加载器去完成,依次向上,因此,所有的类加载请求最终都应该被传递到顶层的启动类加载器中…