开发者

How to implement "Load 25 More" in UITableViewController

开发者 https://www.devze.com 2022-12-29 14:11 出处:网络
I am working on an iphone application. Application loads plenty of records from a webservice into table view controller. I would lik开发者_如何转开发e to load 25 records initially and remaining in 25

I am working on an iphone application. Application loads plenty of records from a webservice into table view controller. I would lik开发者_如何转开发e to load 25 records initially and remaining in 25 batch on clicking something like "Load 25 more" at the end of the table view.

Any help would be grealy appreciated.

Thanks


Just put a button connected to an Event in your table footer. When the button is clicked, append the next 25 results to your already existing array of items.

After that, just do a [self.tableView setNeedsDisplay]. I use that to let my table know I have extra data in the table. By using that, there is no need to scroll to the right line in the table, because it keeps its original position.

Also, why call the viewDidAppear method, this seems wrong to me, because (ofcourse) the view already appeared and all declerations and assignments you do there are re-done. Just put the stuff you need to be done while viewing the view AND when you are appending data in a seperate method and put call that method from your button-press event and from the viewDidAppear event.


I wrote an example project that does this which you can download from GitHub https://github.com/Abizern/PartialTable


I do almost the same in my application, getting 50 first records from webservice. As a table footer I have a view with next/previous buttons, that when pressed launch a fetching request for next/previous 50 results. After fetch request is processed I call viewWillAppear:animated: for my view controller and inside to [self.tableView reloadData], so these results show up in the same table view. Of cause I'm keeping the data each time only for presented results, but it depends on your needs.

Hope this helps


I wrote something that does exactly what you describe, an put it on github : https://github.com/nmondollot/NMPaginator

It encapsulates pagination, and works with pretty much any webservice using page and per_page parameters. It also features a UITableView with automatic fetching of next results as you scroll down. Hope it'll be useful.

0

精彩评论

暂无评论...
验证码 换一张
取 消