我有一个表格视图,该数据基于状态字段进行了分组。我可以正确显示分组数据,但是出现问题,并且与分页有关。
在未分组的UITableView上,它查看行,并且当达到阈值时,我调用一个事件以从API捕获更多数据,该想法似乎不适用于分组数据。
我尝试环顾四周,但在分页时找不到分组数据。
我认为它与未分组的UITableView
几乎相同,在分组的UITableView
中,您必须首先检查last section
,然后检查该部分中的行是否为last row
:
public class myDelegate : UITableViewDelegate {
Dictionary<string, List<TableItem>> indexedTableItems;
string[] keys;
public myDelegate(List<TableItem> items) {
indexedTableItems = new Dictionary<string, List<TableItem>>();
foreach (var t in items)
{
if (indexedTableItems.ContainsKey(t.SubHeading))
{
indexedTableItems[t.SubHeading].Add(t);
}
else
{
indexedTableItems.Add(t.SubHeading, new List<TableItem>() { t });
}
}
keys = indexedTableItems.Keys.ToArray();
}
public override void WillDisplay(UITableView tableView, UITableViewCell cell, NSIndexPath indexPath)
{
List<TableItem> tabItems = indexedTableItems[keys[indexPath.Section]];
if (indexPath.Section == keys.Length-1 && indexPath.Row == tabItems.Count-1)
{
loadmoreData();
}
}
public void loadmoreData() {
Console.WriteLine("loadmoreData");
}
}
我上传了示例项目here,随时可以问我任何问题。