2
MvxRecyclerViewを使用しています。リスト内で選択した項目をアニメートしたいと思います。選択したアイテムビューへの参照を取得するにはどうすればよいですか? TouchDelegateを使うべきですか?MvxRecyclerViewで選択された項目をアニメ化する
MvxRecyclerViewを使用しています。リスト内で選択した項目をアニメートしたいと思います。選択したアイテムビューへの参照を取得するにはどうすればよいですか? TouchDelegateを使うべきですか?MvxRecyclerViewで選択された項目をアニメ化する
RecyclerAdapter
からビュー参照を取得できるはずです。
実装例:
ご希望のアニメーションに対処するためのカスタムMvxRecyclerAdapter
を作成します。
public class SelectedAnimatorRecyclerAdapter : MvxRecyclerAdapter
{
public SelectedAnimatorRecyclerAdapter(IMvxAndroidBindingContext bindingContext)
: base(bindingContext)
{
}
public override void OnBindViewHolder(RecyclerView.ViewHolder holder, int position)
{
base.OnBindViewHolder(holder, position);
holder.ItemView.Click += (s, e) =>
{
SetAnimation(holder.ItemView);
};
}
void SetAnimation(View viewToAnimate)
{
ScaleAnimation anim = new ScaleAnimation(0.0f, 1.0f, 0.0f, 1.0f, Dimension.RelativeToSelf, 0.5f, Dimension.RelativeToSelf, 0.5f);
anim.Duration = 2000;
viewToAnimate.StartAnimation(anim);
}
}
あなたMvxRecyclerView
var recyclerView = view.FindViewById<MvxRecyclerView>(Resource.Id.my_recycler_view);
recyclerView.Adapter = new SelectedAnimatorRecyclerAdapter((IMvxAndroidBindingContext)BindingContext);
にアダプタを実装します