語言

ViewAnimationUtils.CreateCircularReveal 方法

定義

回傳一個動畫師,可以動畫一個裁剪圓圈。

[Android.Runtime.Register("createCircularReveal", "(Landroid/view/View;IIFF)Landroid/animation/Animator;", "")]
public static Android.Animation.Animator? CreateCircularReveal(Android.Views.View? view, int centerX, int centerY, float startRadius, float endRadius);
[<Android.Runtime.Register("createCircularReveal", "(Landroid/view/View;IIFF)Landroid/animation/Animator;", "")>]
static member CreateCircularReveal : Android.Views.View * int * int * single * single -> Android.Animation.Animator

參數

view
View

視圖會被剪貼在動畫圓圈上。

centerX
Int32

相對於 view動畫圓心的 x 座標。

centerY
Int32

相對於 view動畫圓心的 y 座標。

startRadius
Single

動畫圓的起始半徑。

endRadius
Single

動畫圓的終點半徑。

傳回

這是建立圓形揭露操作的結果。

屬性

備註

回傳一個動畫師,可以動畫一個裁剪圓圈。

View 投射的任何陰影都會尊重這個動畫師的圓形剪輯。

視窗中任何時候只能套用一個非矩形的剪輯。 被圓形揭露動畫裁剪的視角優先於 View#setClipToOutline(boolean) View Outline clipping。

請注意,這裡回傳的動畫是一次性動畫。 該程序無法重複使用,且一旦啟動,也無法暫停或繼續。 它也是一個非同步動畫,會自動從 UI 執行緒執行。 因此 AnimatorListener#onAnimationEnd(Animator) ,動畫會在結束後發生,但可能會因執行緒回應而延遲。

請注意,如果揭露動畫器設定了任何起始延遲,起始半徑不會套用到揭露圈,直到開始延遲過去。 如果想在開始延遲期間設定揭示圓的起始半徑,一個變通方法是加入一個起始和結束半徑相同的動畫師。 例如:

<code>
            public static Animator createRevealWithDelay(View view, int centerX, int centerY, float startRadius, float endRadius) {
                Animator delayAnimator = ViewAnimationUtils.createCircularReveal(view, centerX, centerY, startRadius, startRadius);
                delayAnimator.setDuration(delayTimeMS);
                Animator revealAnimator = ViewAnimationUtils.createCircularReveal(view, centerX, centerY, startRadius, endRadius);
                AnimatorSet set = new AnimatorSet();
                set.playSequentially(delayAnimator, revealAnimator);
                return set;
            }
</code>

Java 文件 android.view.ViewAnimationUtils.createCircularReveal(android.view.View, int, int, float, float)。

本頁部分內容為基於 Open Source Project 所創建與分享的作品,並依授權條款所描述的使用進行修改。

適用於