三九宝宝网宝宝绘画儿童画

android不用XML怎样在代码里用animation同时实现图片的缩放和移

01月10日 编辑 39baobao.com

[急需一篇关于国庆节的演讲稿!词不用太华丽符合高二学生的啊字数]尊敬的老师,亲爱的同学们:大家好!今天我演讲的题目是《我的中国心》。“河山只在我梦萦,祖国已多年未亲近,可是不管怎样也改变不了我的中国心……”我们也许不曾听闻过这首老歌,因...+阅读

1.在Java Code定义动画AlphaAnimation渐变透明度动画效果ScaleAnimation渐变尺寸伸缩动画效果TranslateAnimation画面转换位置移动动画效果RotateAnimation画面转移旋转动画效果//定义变量private Animation myAnimation_Alpha;private Animation myAnimation_Scale;private Animation myAnimation_Translate;private Animation myAnimation_Rotate;myAnimation_Alpha=new AlphaAnimation(0.1f, 1.0f);//第一个参数fromAlpha为 动画开始时候透明度//第二个参数toAlpha为 动画结束时候透明度myAnimation_Scale =new ScaleAnimation(0.0f, 1.4f, 0.0f, 1.4f, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f);//第一个参数fromX为动画起始时 X坐标上的伸缩尺寸//第二个参数toX为动画结束时 X坐标上的伸缩尺寸//第三个参数fromY为动画起始时Y坐标上的伸缩尺寸//第四个参数toY为动画结束时Y坐标上的伸缩尺寸//第五个参数pivotXType为动画在X轴相对于物件位置类型//第六个参数pivotXValue为动画相对于物件的X坐标的开始位置//第七个参数pivotXType为动画在Y轴相对于物件位置类型//第八个参数pivotYValue为动画相对于物件的Y坐标的开始位置myAnimation_Translate=new TranslateAnimation(30.0f, -80.0f, 30.0f, 300.0f);//第一个参数fromXDelta为动画起始时 X坐标上的移动位置//第二个参数toXDelta为动画结束时 X坐标上的移动位置//第三个参数fromYDelta为动画起始时Y坐标上的移动位置//第四个参数toYDelta为动画结束时Y坐标上的移动位置myAnimation_Rotate=new RotateAnimation(0.0f,350.0f,Animation.RELATIVE_TO_SELF,0.5f, Animation.RELATIV E_TO_SELF, 0.5f);//第一个参数fromDegrees为动画起始时的旋转角度//第二个参数toDegrees为动画旋转到的角度//第三个参数pivotXType为动画在X轴相对于物件位置类型//第四个参数pivotXValue为动画相对于物件的X坐标的开始位//第五个参数pivotXType为动画在Y轴相对于物件位置类型//第六个参数pivotYValue为动画相对于物件的Y坐标的开始位置2.3自定义动画 除了以上4类动画外,在代码中继承android.view.animation.Animation类来实现自定义效果。

通过重写Animation的applyTransformation(float interpolatedTime, Transformation t)函数来实现自定义动画效果。在绘制动画的过程中会反复的调用applyTransformation函数,每次调用参数interpolatedTime值都会变化,该参数从0渐 变为1,当该参数为1时表明动画结束。通过参数Transformation 来获取变换的矩阵(matrix),通过改变矩阵就可以实现各种复杂的效果。自定义图片旋转效果动画代码。

class ViewAnimation extends Animation{ int mCenterX; int mCenterY; Camera camera = new Camera(); public ViewAnimation() { } Override public void initialize(int width, int height, int parentWidth, int parentHeight){ super.initialize(width, height, parentWidth, parentHeight); mCenterX = width/2; mCenterY = height/2; setDuration(2500); setFillAfter(true); // setRepeatCount(100); setInterpolator(new LinearInterpolator()); } Override protected void applyTransformation(float interpolatedTime, Transformation t){ final Matrix matrix = t.getMatrix(); camera.save(); camera.translate(0.0f, 0.0f, (1300 - 1300.0f * interpolatedTime)); camera.rotateY(360 * interpolatedTime); camera.getMatrix(matrix); matrix.preTranslate(-mCenterX, -mCenterY); matrix.postTranslate(mCenterX, mCenterY); camera.restore(); } } camera.translate(0.0f, 0.0f, (1300 - 1300.0f * interpolatedTime))在第一次调用的时候interpolatedTime值为0,相当于把ImageView在Z轴后移1300像素, 然后逐步的往前移动到0,同时camera.rotateY(360 * interpolatedTime)函数又把ImageView沿Y轴翻转360度2.4动画实现 在代码的一个activity中,将需要动画的控件与已定义的动画关联,开启动画 private Animation mAnimationXXX = null;//生明动画 ImageView mAnimImageX = null;//生明 ImageView控件(或者其它需要有动画的控件) mAnimImageX = (ImageView) this.findViewById(R.id.anim_imageX);//取得图片资源 mAnimImageX.startAnimation(mAnimationXXX);//基于xml文件,开启动画 mAnimImageX.startAnimation(new ViewAnimation());//基于自定义控件,开启动画。

2.5图片旋转Demopublic class AnimationDemo extends Activity { /** Called when the activity is first created. */ ImageView mAnimImage;private Animation mAnimationAlpha = null; private Animation mAnimationScale = null; private Animation mAnimationTranslate = null; private Animation mAnimationRotate = null; Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main);mAnimImage = (ImageView) this.findViewById(R.id.anim_image1); mAnimationAlpha = AnimationUtils.loadAnimation(this,R.anim.alpha_animation); mAnimationScale = AnimationUtils.loadAnimation(this,R.anim.scale_anim...

以下为关联文档:

CAD图形中的图片怎么剪裁掉不用的部分CAD图形中的图片剪裁掉不用的部分的解决办法 这里以CAD2014为例,其他版本操作一样。打开一一个已经插入图形的CAD工程文件,这里是已经插入的一张图片,但是感觉太长,需要修剪一下...

用英语介绍重阳节不用太多字数重阳节英文介绍:Double Ninth FestivalThe 9th day of the 9th lunar month is the traditional Chongyang Festival, or Double Ninth Festival. It usually falls in Octob...

微信怎么发说说不用图片带图片和不带图片的方法如下,请参考 1、登录微信,打开微信下面导航上的朋友 2、点击朋友们后,会有个朋友圈的选项卡,打开它; 3、如果是发照片的话,点击右上角的相机,然后选择拍照还...

在微信上怎么发说说不用带图片的方法如下: 1、打开微信,点击最下面的导航“发现”,进入微信朋友圈。 2、在朋友圈界面,按住右上角的相机样式按钮不放,等待说说的界面自动弹出 3、自动弹出的说说界面里是纯文字的...

关于中秋的散文现代的不用太长月亮升起的地方 作者:小岛 月亮升起 有雕归巢的声音 有鱼儿跃出碧光 有琴声演绎古老传说 好多不知谁的眼睛 落于白桦树上 眨眨地 透出智慧和孤傲 夜里 却抛给月亮 无限柔情...

宝贝详情页里面如何做鼠标滑过变换图片代码是什么不用CSS权限鼠标事件 (Mouse Events)在下列元素中无效:base、bdo、br、frame、frameset、head、html、iframe、meta、param、script、style 以及 title 元素。属性值描述onclick 脚本 当鼠...

PPT图片缩放请教你说的应该是 在同一页里放置多张图片,然后点哪张图片就放大,再点就缩小吧? 你可以这样做: 1.建立一张新幻灯片后,单击“插入”菜单下的“对象......”命令,在弹出的“插入对象”...

word图片大小缩放2010固定长宽篇这部分要说的是把word中的所有图片修改成固定的并且相同的长和宽! 1、打开word,工具-宏-宏(或者直接按Alt+F8)进入宏的界面,如下面所示,输入一个宏名,宏名自己起,能记住就...

星星怎么叠呢不用特别详细我还是略懂一二的只是不知道怎么弄的第一步:拿好塑料管,先用右手的大拇指和食指夹住塑料管,往一个方向把塑料管先捍平。第二步:把管子对折成两段。第三步:对折后,绕管子中点处90度折出来,这时会看见重叠处有一小三角形...

推荐阅读
图文推荐