若是在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(); } } }