com.alicizax.unity.ui.exten.../Runtime/RecyclerView/Adapter/LoopAdapter.cs

37 lines
881 B
C#
Raw Normal View History

2025-03-12 20:59:12 +08:00
using System.Collections.Generic;
namespace AlicizaX.UI
2025-03-12 20:59:12 +08:00
{
public class LoopAdapter<T> : Adapter<T> where T : ISimpleViewData
2025-03-12 20:59:12 +08:00
{
public LoopAdapter(RecyclerView recyclerView) : base(recyclerView)
{
}
public LoopAdapter(RecyclerView recyclerView, List<T> list) : base(recyclerView, list)
{
}
public override int GetItemCount()
{
return GetRealCount() > 0 ? int.MaxValue : 0;
2025-03-12 20:59:12 +08:00
}
public override int GetRealCount()
{
return list == null ? 0 : list.Count;
}
public override void OnBindViewHolder(ViewHolder viewHolder, int index)
{
if (list == null || list.Count == 0)
{
return;
}
2025-03-12 20:59:12 +08:00
index %= list.Count;
base.OnBindViewHolder(viewHolder, index);
}
}
}