‘壹’ android动画translateAnimation能同时应用于两个控件吗
可以把按钮放在一个父布局中,然后对父布局动画啊?
‘贰’ Android开发,对于animation怎么可以多个同时运行
之前做界面切换动画的时候好像遇到过类似的问题,咱当时的需求是界面退出的动画是界面先缩小一部分,然后平移出去,动画xml文件是这么写的:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas。android。com/apk/res/android" >
<scale
android:ration="500"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:pivotX="50%p"
android:pivotY="50%p"
android:toXScale=".7"
android:toYScale=".7" />
<translate
android:startOffset="500"
android:ration="500"
android:fromXDelta="0"
android:toXDelta="-100%p" />
</set>
这个会先执行上面的 缩放动画,执行完后再执行下面的平移动画,如果想要同时执行的效果,应该把第二个动画的startOffset属性去掉就可以了,如过没有记错的话,也就是改成这样:
<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas。android。com/apk/res/android" >
<scale
android:ration="500"
android:fromXScale="1.0"
android:fromYScale="1.0"
android:pivotX="50%p"
android:pivotY="50%p"
android:toXScale=".7"
android:toYScale=".7" />
<translate
android:ration="500"
android:fromXDelta="0"
android:toXDelta="-100%p" />
</set>
试试看看哈,不一定行,但是应该是可以的
‘叁’ android怎么连续播放多个动画
如果不能同时播放的话,我觉得可以使用videoview这个控件,就不用去代码控制图像的动画了。
‘肆’ android两个动画叠加怎么实现
①Animation设置setAnimationListener(new ReStartAnimationListener())
②ReStartAnimationListener()具体实现
/** * 重复启动动画 */ private class ReStartAnimationListener implements Animation.AnimationListener { public void onAnimationEnd(Animation animation) { // TODO Auto-generated method stub animation.reset(); animation.setAnimationListener(new ReStartAnimationListener()); animation.start(); } public void onAnimationRepeat(Animation animation) { // TODO Auto-generated method stub } public void onAnimationStart(Animation animation) { // TODO Auto-generated method stub } }
‘伍’ android动画,translateanimation,是否可以实现让两个控件流畅的执行同一动画
是的,你可以使用动画的情况下,一个单独的写了一个内部??方法,再加上视图参数控制传入的使用线程同步播放的。当然,楼上的说是也。不过是一个全球性的影响,不是每一个组件的影响。
‘陆’ android 帧动画和补间动画可以同时使用吗
帧动画——FrameAnimation
将一系列图片有序播放,形成动画的效果。其本质是一个Drawable,是一系列图片的集合,本身可以当做一个图片一样使用
在Drawable文件夹下,创建animation-list为根节点的资源文件
<animation-list android:oneshot="false">
<item android:drawable="@drawable/img1" android:ration="100"/>
<item android:drawable="@drawable/img2" android:ration="100"/>
<item android:drawable="@drawable/img3" android:ration="100"/>
<item android:drawable="@drawable/img4" android:ration="100"/>
</animation-list>
oneshot:是否只播放一次
drawable:一帧引用的图片
ration:一帧播放的时间
播放动画
将动画作为控件的背景
((AnimationDrawable)view.getBackground()).start();
Animation常用属性
ration:动画时间
repeatCount:重复次数 infinite无限次
fillAfter:是否停止在最后一帧
repeatMode:重复模式 值:restart重新开始,reserve反复
startOffset:开始延迟时间
补间动画 Tween Animation
只能应用于View对象,只支持部分属性,View animation值改变了View绘制的位置,并没有改变对象本身的真实位置
可以使用XML定义也可以使用代码定义 XML定义的动画放在/res/anim/文件夹内
开始动画 通过view的startAnimation(Animation a) 参数定义的动画
‘柒’ android两个animation无限循环怎么做
据我所知,想直接给AnimationSet设置重复,是不行的。不过你可以这样来:
final int transDuration = 2000;
final int alphaDuration = 1000;
AnimationSet set = new AnimationSet(false);
set.setRepeatMode(Animation.RESTART);
TranslateAnimation translateAnimation = new TranslateAnimation(0, 0, 0, 300);
translateAnimation.setInterpolator(new Interpolator() {
@Override
public float getInterpolation(float arg0) {
float ret = arg0 / (1.0f * transDuration / (transDuration + alphaDuration));
return ret < 1 ? ret : 1;
}
});
translateAnimation.setRepeatCount(Animation.INFINITE);
translateAnimation.setDuration(transDuration + alphaDuration);
AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0);
alphaAnimation.setRepeatCount(Animation.INFINITE);
alphaAnimation.setDuration(alphaDuration);
alphaAnimation.setStartOffset(transDuration);
set.addAnimation(translateAnimation);
set.addAnimation(alphaAnimation);
view.startAnimation(set);
或者像其他所说的,通过在一个动画结束后开始另外一个动画的方式。
‘捌’ 同一个imageview执行两个动画 android java
//思想驱动: 先执行第一个动画,给动画添加监听,执行完第一个动画后,执行第二个动画
image1.startanimation(animation
);
animation.setAnimationListener(new AnimationListener() {
@Override
public void onAnimationStart(Animation animation) {
}
@Override
public void onAnimationRepeat(Animation animation) {
}
@Override
public void onAnimationEnd(Animation animation) {
image1.startanimation(animation2);
}
});
‘玖’ 请问android动画如何顺序播放两种效果
你可以这么做
在第一种动画上设置动画监听,当监听到动画结束后在执行第二种动画。例如
AlphaAnimationanimation=newAlphaAnimation(0,1);//第一种动画
animation.setDuration(100);
animation.setAnimationListener(newAnimationListener(){
@Override
publicvoidonAnimationStart(Animationanimation){
//代码
}
@Override
publicvoidonAnimationRepeat(Animationanimation){
//代码
}
@Override
publicvoidonAnimationEnd(Animationanimation){
//第二种动画
}
});
View.startAnimation(animation);