android Animation 动画。淡出动画
生活随笔
收集整理的這篇文章主要介紹了
android Animation 动画。淡出动画
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
淡出動畫
protected void startHotelNearByIconAnim() {AlphaAnimation alphaAnimation = new AlphaAnimation(1, 0);//初始化操作,參數傳入0和1,即由透明度0變化到透明度為1alphaAnimation.setFillAfter(true);//動畫結束后保持狀態alphaAnimation.setDuration(2000);//動畫持續時間,單位為毫秒alphaAnimation.setAnimationListener(new Animation.AnimationListener() {@Overridepublic void onAnimationStart(Animation animation) {}@Overridepublic void onAnimationRepeat(Animation animation) {}@Overridepublic void onAnimationEnd(Animation animation) {loglinearLayout.setVisibility(View.GONE);}});loglinearLayout.startAnimation(alphaAnimation);//開始動畫 }?
基礎動畫:
view引用動畫方法:
Animation animation = AnimationUtils.loadAnimation(this, R.anim.alpha); iv.startAnimation(animation);透明動畫:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"><alphaandroid:duration="1000"android:fromAlpha="0.0"android:toAlpha="1.0"/> </set>縮放動畫2:
/*** 第一個參數fromAlpha為 動畫開始時候透明度*第二個參數toAlpha為 動畫結束時候透明度*/ Animation animation = new AlphaAnimation(0, 1); animation.setDuration(1000);縮放動畫:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"><scaleandroid:duration="1000"android:fromXScale="0"android:fromYScale="0"android:pivotX="50%"android:pivotY="50%"android:toXScale="1"android:toYScale="1" /> </set>縮放動畫2:
/*** 第一個參數fromX為動畫起始時 X坐標上的伸縮尺寸* 第二個參數toX為動畫結束時 X坐標上的伸縮尺寸* 第三個參數fromY為動畫起始時Y坐標上的伸縮尺寸* 第四個參數toY為動畫結束時Y坐標上的伸縮尺寸* 說明: 0.0表示收縮到沒有;1.0表示正常無伸縮;值小于1.0表示收縮;值大于1.0表示放大* 第五個參數pivotXType為動畫在X軸相對于物件位置類型* 第六個參數pivotXValue為動畫相對于物件的X坐標的開始位置* 第七個參數pivotXType為動畫在Y軸相對于物件位置類型* 第八個參數pivotYValue為動畫相對于物件的Y坐標的開始位置*/ Animation animation = new ScaleAnimation(0, 1, 0, 1, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); animation.setDuration(1000);旋轉動畫:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"><rotateandroid:duration="1000"android:fromDegrees="0"android:pivotX="50%"android:pivotY="50%"android:toDegrees="360" /> </set>旋轉動畫2:
/*** 第一個參數fromDegrees為動畫起始時角度* 第二個參數toDegrees為動畫結束角度* 第三個參數pivotXType為動畫在X軸相對于物件位置類型* 第四個參數pivotXValue為動畫相對于物件的X坐標的開始位置* 第五個參數pivotXType為動畫在Y軸相對于物件位置類型* 第六個參數pivotYValue為動畫相對于物件的Y坐標的開始位置*/ Animation animation = new RotateAnimation(0, 360, Animation.RELATIVE_TO_SELF, 0.5f, Animation.RELATIVE_TO_SELF, 0.5f); animation.setDuration(1000);位移動畫:
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android"><translateandroid:duration="2000"android:fromXDelta="0"android:fromYDelta="0"android:toXDelta="500"android:interpolator="@android:anim/accelerate_interpolator"android:toYDelta="0" /> </set>位移動畫2:
/*** 第一個參數fromXDelta為動畫起始時的x坐標* 第二個參數toXDelta為動畫結束時的x坐標* 第三個參數fromYDelta為動畫起始時的y坐標* 第四個參數toYDelta為動畫結束時的y坐標*/ Animation animation = new TranslateAnimation(0, 500, 0, 0); animation.setDuration(2000); /**設置插值器:先加速,后減速**/ animation.setInterpolator(new AccelerateDecelerateInterpolator()); iv.startAnimation(animation);附:位移動畫完成后位置恢復到初始位置的問題
?
?
位移動畫
從左向右進入的動畫 left_to_right.xml
?
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 定義從左向右進入的動畫 --><translateandroid:duration="500"android:fromXDelta="-250%"android:toXDelta="0%" /></set>從右向左退出的動畫 right_to_left.xml
?
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 定義從右向左動畫退出動畫 --><translateandroid:duration="500"android:fromXDelta="0%"android:toXDelta="-250%" /></set>從上向下進入的動畫 top_to_down.xml
?
?
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 定義從上向下進入的動畫 --><translateandroid:duration="500"android:fromYDelta="-250%"android:toYDelta="0%" /></set>從下向上退出的動畫 down_to_top.xml
?
?
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 定義從下向上動畫退出動畫 --><translateandroid:duration="500"android:fromYDelta="0%"android:toYDelta="-250%" /></set>從右向左進入的動畫 right_to_left.xml
?
?
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 定義從右向左進入的動畫 --><translateandroid:duration="500"android:fromXDelta="250%"android:toXDelta="0%" /></set>從左向右退出的動畫 left_to_right.xml
?
?
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 定義從左向右動畫退出動畫 --><translateandroid:duration="500"android:fromXDelta="0%"android:toXDelta="250%" /></set>從下向上進入的動畫 down_to_top.xml
?
?
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 定義從下向上進入的動畫 --><translateandroid:duration="500"android:fromYDelta="250%"android:toYDelta="0%" /></set>從上向下退出的動畫 top_to_down.xml
?
?
<?xml version="1.0" encoding="utf-8"?> <set xmlns:android="http://schemas.android.com/apk/res/android" ><!-- 定義從上向下動畫退出動畫 --><translateandroid:duration="500"android:fromYDelta="0%"android:toYDelta="250%" /></set>創建style
?
?
<!-- 分享Dialog --> <style name="dialog_share" parent="android:Animation"><item name="@android:windowEnterAnimation">@anim/down_to_top</item><item name="@android:windowExitAnimation">@anim/top_to_dow</item> </style>進出引用
?
?
@Override protected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);requestWindowFeature(Window.FEATURE_NO_TITLE);setContentView(R.layout.dialog_scroll_chose);Window window = getWindow();window.setGravity(Gravity.BOTTOM);//設置Dialog在底部顯示window.setBackgroundDrawableResource(android.R.color.transparent);//設置背景透明window.setLayout(ViewGroup.LayoutParams.MATCH_PARENT, ViewGroup.LayoutParams.WRAP_CONTENT);//設置橫向全屏window.setWindowAnimations(R.style.dialog_share);//引用animationinit();//初始化 }單引用
?
Animation animation = AnimationUtils.loadAnimation(MainActivity.this, R.anim.alpha); AnimationSet animationSet2 = new AnimationSet(true); animationSet2.addAnimation(animation); imageView.startAnimation(animationSet2);?
?
?
?
總結
以上是生活随笔為你收集整理的android Animation 动画。淡出动画的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Mongoose provide acc
- 下一篇: Shiro安全框架入门篇