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

40 lines
1.2 KiB
C#
Raw Normal View History

namespace AlicizaX.UI
2025-03-12 20:59:12 +08:00
{
2026-03-11 14:18:07 +08:00
/// <summary>
/// RecyclerView 适配器接口,负责提供数据和绑定视图
/// </summary>
2025-03-12 20:59:12 +08:00
public interface IAdapter
{
2026-03-11 14:18:07 +08:00
/// <summary>
/// 获取列表项总数(包括循环或分组后的虚拟数量)
/// </summary>
/// <returns>列表项总数</returns>
2025-03-12 20:59:12 +08:00
int GetItemCount();
2026-03-11 14:18:07 +08:00
/// <summary>
/// 获取实际数据项数量(不包括循环或分组的虚拟数量)
/// </summary>
/// <returns>实际数据项数量</returns>
2025-03-12 20:59:12 +08:00
int GetRealCount();
2026-03-11 14:18:07 +08:00
/// <summary>
/// 获取指定索引位置的视图名称,用于视图类型区分
/// </summary>
/// <param name="index">列表项索引</param>
/// <returns>视图名称</returns>
2025-03-12 20:59:12 +08:00
string GetViewName(int index);
2026-03-11 14:18:07 +08:00
/// <summary>
/// 绑定视图持有者与数据
/// </summary>
/// <param name="viewHolder">视图持有者</param>
/// <param name="index">数据索引</param>
2025-03-12 20:59:12 +08:00
void OnBindViewHolder(ViewHolder viewHolder, int index);
2026-03-11 14:18:07 +08:00
/// <summary>
/// 通知数据已更改,触发视图刷新
/// </summary>
2025-03-12 20:59:12 +08:00
void NotifyDataChanged();
}
}