日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

android Animation 动画。淡出动画

發布時間:2023/12/10 编程问答 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 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);

附:位移動畫完成后位置恢復到初始位置的問題

  • @Override??
  • protected?void?onAnimationEnd()?{??
  • ????super.onAnimationEnd();??
  • ????FrameLayout.LayoutParams?ll?=?new?FrameLayout.LayoutParams(LinearLayout.LayoutParams.WRAP_CONTENT,?LinearLayout.LayoutParams.FILL_PARENT);??
  • ????ll.setMargins(-50,?0,?0,?0);??
  • ????main_layout.setLayoutParams(ll);??
  • ?}??
  • ?

    ?

    位移動畫

    從左向右進入的動畫 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 动画。淡出动画的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。