ios - How to Load Only Five Cell When Table View Scrolled? -
i create tableview json info contain pagination , each webservices page contain 10 info want when table view scroll want load 5items in each time how possible? please give me solution.
my code that
-(void)scrollviewdidenddragging:(uiscrollview *)scrollview willdecelerate:(bool)decelerate { nsinteger currentoffset = scrollview.contentoffset.y; nsinteger maximumoffset = scrollview.contentsize.height- scrollview.frame.size.height; if (maximumoffset - currentoffset <= 0) { pagenum = pagenum + 1; [self getdata]; } } -(void)getdata { nsurl * url=[nsurl urlwithstring:[nsstring stringwithformat:@"http://www.truemanindiamagazine.com/webservice/news.php?page=%d",pagenum]]; dispatch_async(kbgqueue, ^{ info = [nsdata datawithcontentsofurl:url]; [self performselectoronmainthread:@selector(fetcheddata:) withobject:data waituntildone:yes]; }); } and fetchdata method is
-(void)fetcheddata:(nsdata *)responsedata { uiactivityindicatorview *spinner = [[uiactivityindicatorview alloc] initwithactivityindicatorstyle:uiactivityindicatorviewstylegray]; spinner.frame = cgrectmake(0, 0, 320, 44); self.newstable.tablefooterview = spinner; if (responsedata.length > 0) { [spinner startanimating]; nserror* error; self.json = [nsjsonserialization jsonobjectwithdata:responsedata options:kniloptions error:&error]; if ([[_json objectforkey:@"data"] iskindofclass:[nsarray class]]) { nsarray *arr = (nsarray *)[_json objectforkey:@"data"]; [self.imagearray addobjectsfromarray:arr]; [self.newstable reloaddata]; nslog(@"images,%@",self.imagearray); } } [self.spinner stopanimating]; self.spinner.hideswhenstopped=yes; } -(nsinteger)numberofsectionsintableview:(uitableview *)tableview { homecoming self.imagearray.count; } -(nsinteger)tableview:(uitableview *)tableview numberofrowsinsection:(nsinteger)section { if (self.imagearray == nil || self.imagearray.count < 1) { homecoming 0; } else { homecoming 1; } [self.newstable reloaddata]; } i know asked many times not answer.please help me.
the way did on our server gave api "page size" parameter when request info like:
http://www.truemanindiamagazine.com/webservice/news.php?page=3&pagesize=5 it returns 5 results instead of default amount, 10 in case. means don't have fancy filtering on ios side of things.
ios uitableview
No comments:
Post a Comment