『壹』 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);