目标c中的滚动,分页或负载更多的技术浏览技术



hai我是iOS应用程序开发的新手最初只有30个记录,一旦用户向下滚动,我就必须加载更多记录。

您可以通过以下两种方法进行管理:
1)手动
在这里您需要做的是,您需要服用两个NSMutableArray,假设 wonsewarray和tblarray 。通过该响应网络包含您的Web服务的响应,Tblarray将管理UITableView计数。
通过此,您可以最初显示一组数据,例如。10,因此int count = 10,通过添加从ResponseArray到Tblarray 的前10个记录。当用户向下滚动时,您可以从ResponseArray获取11-20个数据,并使用

将其添加到Tblarray
for(int i = 10; i < 20; i++)
{
    [tblArray addObject:[responseArray objectAtIndex:i]]
}
[<your TableView Name> reloadData];
count += 10;

2)从服务器端汉德尔
使用此选项,您可以轻松处理整个内容。
为此,您只需要将当前的计数/分页值传递给服务器,服务器将相应地响应您。
例如:最初您现在没有任何记录。因此,您可以在Web服务参数中传递0。
一旦获得响应,您将在响应中 10记录。在您的UITableView中显示它们。
现在,当用户向下滚动时,您可以在此处管理数组计数
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
在上述方法中,您可以将计数值提高1,也可以将其设置为等于数组计数。目前count += 1count += <yourArrayName>.count
之后,您再次将计数值作为Web服务参数,您将在响应中获得下一个10个记录。您需要通过[<yourArrayName> arrayByAddingObjectsFromArray:<your resposeArray>];附加到数组。
使用无论哪种方式,您都可以解决问题。但是我个人推荐 2nd Option

一起使用

如果您正在寻找第三方库来实现加载更多,则可以尝试此

https://github.com/samvermette/svpulltorefresh

手动您也可以使用UIScrollViewDelegate方法scrollViewDidEndDecelerating跟踪上一个可见的单元格,然后您可以在dataSource中附加更多数据。

最新更新