XamarinAndroid組件教程設置自定義子元素動畫(一)

XamarinAndroid組件教程設置自定義子元素動畫(一)

若是在RecyclerViewAnimators.Animators中沒有所須要的動畫效果,就能夠自定義一個。此時,須要讓自定義的動畫繼承BaseItemAnimator抽象類。ide

【示例1-2】下面以RecylerViewAnimatorsItemAnimator項目爲基礎,在RecylerView子元素進行添加/刪除操做時,實現透明動畫效果。具體的操做步驟以下:動畫

(1)建立一個類文件,命名爲AlphaAnimator。spa

(2)打開AlphaAnimator.cs文件,實現透明度動畫。代碼以下:code

using System;

using System.Collections.Generic;

using System.Linq;

using System.Text;

using Android.App;

using Android.Content;

using Android.OS;

using Android.Runtime;

using Android.Support.V4.View;

using Android.Support.V7.Widget;

using Android.Views;

using Android.Widget;

using RecyclerViewAnimators.Animators;

namespace RecylerViewAnimatorsItemAnimator

{

    public class AlphaAnimator : BaseItemAnimator

    {

        public AlphaAnimator()

        {

        }

        //添加子元素時調用的動畫

        protected override void AnimateAddImpl(RecyclerView.ViewHolder holder)

        {

            ViewCompat.Animate(holder.ItemView)

                .Alpha(1)

                .SetDuration(AddDuration)

                .Start();

        }

        //刪除子元素時調用的動畫

        protected override void AnimateRemoveImpl(RecyclerView.ViewHolder holder)

        {

            ViewCompat.Animate(holder.ItemView)

                .SetDuration(RemoveDuration)

                .Alpha(0)

                .Start();

        }

    }

}
相關文章
相關標籤/搜索