objective c - How to filter a Parse query by an tableview index? -
i have uitableviewcontroller in application. in table performing parse query:
-(ibaction)joinevent:(id)sender {   pfquery *query = [pfquery querywithclassname:@"event"]; [query selectkeys:@[@"vacants"]]; [query wherekey:@"username" equalto:pfuser.currentuser.username]; [query findobjectsinbackgroundwithblock:^(nsarray *objects, nserror *error) {     if (!error) {         // find succeeded.         nslog(@"successfully retrieved %lu scores.", (unsigned long)objects.count);         // found objects           (nsobject *object in objects){              nsstring *a = [object valueforkey:@"vacants"];             nslog(@"vacants %@", a);           }     } else {         // log details of failure         nslog(@"error: %@ %@", error, [error userinfo]);     }      [self.tableview reloaddata]; }];   }
this query gets me vacants in parse cloud.
what want able vacants indexpath.row of table.
so far have tried use
-(void)tableview:(uitableview *)tableview didselectrowatindexpath:(nsindexpath *)indexpath;    instead of ibaction, still same result. using approach don't know how call didselectrowatindexpath ibaction, believe solve issue.
this cellforrowatindexpath method:
-(uitableviewcell *)tableview:(uitableview *)tableview cellforrowatindexpath:(nsindexpath *)indexpath {  static nsstring *cellid = @"cell";  tfgresultstableviewcell *cell= [tableview dequeuereusablecellwithidentifier:cellid forindexpath:indexpath];  if(cell == nil) {     cell = [[tfgresultstableviewcell alloc]             initwithstyle:uitableviewcellstyledefault             reuseidentifier:cellid]; }  // configure cell...  cell.eventnamelabel.text = [eventnamearray objectatindex: [indexpath row]];  cell.userlabel.text = [userarray objectatindex: [indexpath row]]; cell.sportlabel.text = [sportarray objectatindex: [indexpath row]]; cell.eventdatelabel.text = [datearray objectatindex: [indexpath row]]; cell.eventhourlabel.text = [hourarray objectatindex: [indexpath row]]; cell.eventplacelabel.text = [placearray objectatindex: [indexpath row]]; cell.vacantslabel.text = [vacantsarray objectatindex: [indexpath row]]; cell.citylabel.text = [cityarray objectatindex: [indexpath row]];  if([cell.sportlabel.text isequaltostring:@"soccer" ]){      cell.eventimage.image = [uiimage imagenamed:@"soccerballicon.png"]; } else{      cell.eventimage.image = [uiimage imagenamed:@"icon.png"];  }  return cell;   }
add data parse server global array , set delegate table view via code or in soryboard.
nsarray *copyarray = objects; yourtableview.delegate = self ;   in delegatemethod-
-(void)tableview:(uitableview *)tableview didselectrowatindexpath:(nsindexpath *)indexpath{      nsstring *a = [[copyarray objectatindex:indexpath.row]valueforkey:@"vacants"]; }      
Comments
Post a Comment