在滚动UITableView上调用Web服务 [英] Calling web service on Scrolling UITableView
问题描述
我有一个接受 pageNumber
的网络服务参数并给我一些记录作为JSON响应。 (此服务基本上为Silverlight版本实现了的Paging
功能。)我想在用户滚动 UITableView $时逐个加载这些页面c $ c>(表示用户滚动时加载下20个条目(或第二页)。)
I have one web-service that accepts the pageNumber
as Parameter and gives me some records as JSON response. (This service basically implements the functionality of Paging
for Silverlight version.) I want to load these pages one by one when user scrolls the UITableView
(means Load the next 20 entries (or second page) when user scrolls).
我的问题:
如何以及在何处调用此服务以及如何计算pageNumber?
How and Where to call this service and How to calculate pageNumber ?
我搜索了这个,但没有得到任何满意的答案。
I searched about this but didn't get any Satisfied answer.
我发现的是:
- 如何在收到每一定数量的数据后调用Web服务并将其加载到表格视图中
- < a href =https://stackoverflow.com/questions/6314476/load-more-data-from-a-web-service-when-the-user-scrolls-the-uitableview>从Web服务加载更多数据当用户滚动UITableView 时
- 如何在滚动iphone上向tableview添加元素?
- How to call web service after each certain number of data received and load it into table view
- Load more data from a web service when the user scrolls the UITableView
- how to add elements to tableview on scrolling iphone?
我很乐意在这里你的回答 Objective-C语言。
I would love to here your responses in Objective-C Language.
任何建议?
推荐答案
我使用此代码解决了我的问题:
- (void)scrollViewDidScroll:(UIScrollView *)scrollView
{
CGPoint offset = scrollView.contentOffset;
CGRect bounds = scrollView.bounds;
CGSize size = scrollView.contentSize;
UIEdgeInsets inset = scrollView.contentInset;
float y = offset.y + bounds.size.height - inset.bottom;
float h = size.height;
float reload_distance = 10;
if(y > h + reload_distance)
{
lastPageNumber++;
[[NSUserDefaults standardUserDefaults] setInteger:lastPageNumber forKey:@"PageNumber"];
// Call the method.
}
}
希望,这将对未来的访客有所帮助。
Hope, it will be helpful for future Visitors.
这篇关于在滚动UITableView上调用Web服务的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!