i have app webviewcontroller
, webview inside, , content of webview
changed using menuviewcontroller
implementing swrevealviewcontroller
.
when download task started inside viewcontroller
want show progressview
show progress , keep being updated if user selects item menu.
the problem everytime menu item selected, progressview
returned 0, , not updated anymore.
webviewcontroller.m
- (void) startdownload:(nsstring*)manyurls { nslog(@"downloading..."); self.progressview.hidden = no; //download files in seperate thread. dispatch_async(dispatch_get_global_queue(dispatch_queue_priority_default, 0), ^{ nserror *error = nil; //error setting nsstring *index; int numitems; float progress; (int = 1; <= numitems; i++) { // download url item nslog(@"%f", progress); progress = (double)i/(double)numitems; dispatch_async(dispatch_get_main_queue(), ^{ self.progressview.progress = progress; }); } //saving done on main thread dispatch_async(dispatch_get_main_queue(), ^{ nslog(@"download finished !"); self.progressview.hidden = yes; }); }); }
menuviewcontroller.m
- (void)prepareforsegue:(uistoryboardsegue *)segue sender:(id)sender { if ( [segue iskindofclass: [swrevealviewcontrollersegue class]] ) { swrevealviewcontrollersegue *swsegue = (swrevealviewcontrollersegue*) segue; swsegue.performblock = ^(swrevealviewcontrollersegue* rvc_segue, uiviewcontroller* svc, uiviewcontroller* dvc) { uinavigationcontroller* navcontroller = (uinavigationcontroller*)self.revealviewcontroller.frontviewcontroller; [navcontroller setviewcontrollers: @[dvc] animated: no ]; self.revealviewcontroller.rearviewrevealwidth=160; self.revealviewcontroller.rightviewrevealwidth=160; [self.revealviewcontroller setfrontviewposition: frontviewpositionleft animated: yes]; }; nsindexpath *indexpath = [self.tableview indexpathforselectedrow]; nsuinteger selectedsection = indexpath.section; webviewcontroller *webcontroller = segue.destinationviewcontroller; switch (selectedsection) { case 0: webcontroller.webpage = [firstsectionurls objectatindex:indexpath.row]; break; case 1: webcontroller.webpage = [secondsectionurls objectatindex:indexpath.row]; break; case 2: [self createmail]; break; default: break; } }
how can navigate between menu options , keep updating progressview after segue?