in this questionのメソッドを実装しました。しかし、最初のリスト塗りアニメーションは、同時にすべてのオブジェクトが画面に表示され、ちょうど遅れのように見えることを示しています。RecyclerViewアイテムはリスト塗りでアニメーションされますが、最初のアイテムはすべて同時にアニメーション化され、遅れのように見えます
デバッグ中に、アニメーションメソッドが7回呼び出されているのがわかりますが、それは非常に速く、基本的に同時に実行しようとしています。私は何ができるのですか?私はアニメーションを遅らせることを試みたが、私はそれをする方法に立ち往生した。私はその質問にお答えしましたhere.助けてくれてありがとう!
編集:
public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position)
{
//Normal OnBindViewHolder stuff
SetAnimation(vh.ItemView, position);
}
そしてSetAnimation方法:
private void SetAnimation(View viewToAnimate, int position)
{
if (position > lastPosition)
{
var animation = AnimationUtils.LoadAnimation(_context, Resource.Animation.up_from_bottom);
//animation.SetAnimationListener(new CheckpointAnimationListener());
viewToAnimate.StartAnimation(animation);
lastPosition = position;
}
}
私は本当にここで何をしたいですが、アニメーションのためである私は、私は他の質問に置く同じコードを投稿することができますlastPostion = position行が呼び出される前に終了します。
空のAnimationListener。私は実際に待機を処理する方法がわかりません。
private class CheckpointAnimationListener : Java.Lang.Object, Animation.IAnimationListener
{
public void OnAnimationEnd(Animation animation)
{
}
public void OnAnimationRepeat(Animation animation)
{
}
public void OnAnimationStart(Animation animation)
{
}
}
私の前の質問から私のコードをコピーして、これに入れてください。しかし、あなたのコードは、どこに行くのよいアイデアを与えるのですか?私はXamarin.Androidで作業しているので、いくつかのことを別々に行う必要がありますが、あなたのアイデアは良いものです。 –