最近在做启动页动画的时候碰到一个问题,想让一个图片做淡入效果,以下是animation的文件

android:duration="1000"

android:fromXDelta="0.0"

android:fromYDelta="0.0"

android:interpolator="@android:anim/accelerate_interpolator"

android:startOffset="1000"

android:fillAfter="true"

android:toXDelta="0.0"

android:toYDelta="-120.0" />

android:duration="1000"

android:fromAlpha="0.0"

android:interpolator="@android:anim/accelerate_interpolator"

android:repeatCount="0"

android:startOffset="1000"

android:toAlpha="1.0" />

这里做了一个位移和淡入的效果,

然后是调用代码

Animation welcomeAnimation = AnimationUtils.loadAnimation(ReadyActivity.this, R.anim.animation_welcome);

imageView.setAnimation(welcomeAnimation);

welComeAnimation.startNow;

很简单的实现 需要注意的是 用imageView.startAnimaiton  没有效果 用 Animation.startNow 才有效果。原因暂未找到,另外需要在imageView的xml声明里面设置它的visible属性为invisible ,千万不能设置alpha属性为0 不然整个控件就无法显示了。还有一点 如果希望动画在结束的时候不变回动画最初的状态,一定!!!!!!一定要在代码里面设置 welComeAnimation.setFillAfter(true); 千万!!!千万!!!!不能在xml里面设置!!!!!!至于为什么!!!!!!!!!!!不要来问我!!!我也不知道!!!我只知道我被坑了很久!!!!!!

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐