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();

        }

    }

}
相关文章
相关标签/搜索