我想知道我的动画何时结束,所以我必须使用AnimationListener。
我似乎无法在MonoDroid(C#)中找到如何做到这一点。
有谁知道怎么做?
答案 0 :(得分:2)
这是我写的一个简短的一个,当动画结束时给我一个回调:
class AnimationListenerEndCallback : Java.Lang.Object, Animation.IAnimationListener
{
public delegate void Callback(Animation animation);
private Callback callback;
public AnimationListenerEndCallback(Callback callback)
{
this.callback = callback;
}
public void OnAnimationEnd(Android.Views.Animations.Animation animation)
{
callback(animation);
}
public void OnAnimationRepeat(Android.Views.Animations.Animation animation)
{
// do nothing
}
public void OnAnimationStart(Android.Views.Animations.Animation animation)
{
// do nothing
}
}
你这样使用它:
Animation a = AnimationUtils.LoadAnimation(this, Resource.Animation.pull_up);
a.SetAnimationListener(new AnimationListenerEndCallback(delegate
{
// all your local variables are still in scope, so you
// can use them here
}));