ios - Initiating UITalbleViewController in the code -


i have uitableviewcontroller in storyboard in there 3 cell on label in middle on each. instance if user clicks on first cell label in show tableview list of items selecting item previous tableview , item name should printed in place of label.

#import <uikit/uikit.h> @interface carselectcelltableviewcell : uitableviewcell  @property (weak, nonatomic) iboutlet uilabel *carmake; @property (weak, nonatomic) iboutlet uilabel *carmodel; @property (weak, nonatomic) iboutlet uilabel *carrego; @property (weak, nonatomic) iboutlet uilabel *caryear;  //the below label labels in cells. @property (weak, nonatomic) iboutlet uilabel *carselected; @property (weak, nonatomic) iboutlet uilabel *location; @property (weak, nonatomic) iboutlet uilabel *service; @end  #import "bookservice.h" #import <parse/parse.h> #import "carselectcelltableviewcell.h" @interface bookservice () @end  @implementation bookservice  @synthesize tableview;  - (void)viewdidload {     [super viewdidload];     // additional setup after loading view.     self.tableview.delegate = self;     self.tableview.datasource = self;  -(void) tableview:(uitableview *)tableview didselectrowatindexpath:(nsindexpath *)indexpath {     nslog(@"cell tabbed");     pfobject *temp = [customercars objectatindex:indexpath.row];     nslog(@"%@", temp.objectid);     nsstring *car = temp.objectid;         uistoryboard *dashboard = [uistoryboard storyboardwithname:@"main" bundle:nil];     uiviewcontroller *change = [dashboard instantiateviewcontrollerwithidentifier:@"bookaservice"];     [self presentviewcontroller:change animated:yes completion:nil];     static nsstring *identifier = @"carselectedcell";    //here i'm calling cell change label value when selection made. before dequeuereusablecellwithidentifier there should appropriate tableview table.     carselectcelltableviewcell *cell2 = [dequeuereusablecellwithidentifier:identifier];    cell2.carselected.text = @"selcted";  } 

how can programmatically initiate tableview. can change cell label value selected item.

now if u suppose first table view names parentviewcontroller , second table view childview u can foll:

to make parentcontroller delegate of childcontroller. allows childcontroller send message parentcontroller enabling send data back.

for parentcontroller delegate of childcontroller must conform childcontroller's protocol have specify. tells parentcontroller methods must implement.

in childcontroller.h, below #import, above @interface specify protocol.

@class childcontroller;  @protocol viewcontrollerbdelegate <nsobject> - (void)additemviewcontroller:(childcontroller *)controller didfinishenteringitem:(nsstring *)item; @end 

next still in childcontroller.h need setup delegate property in childcontroller.h

@property (nonatomic, weak) id <childcontrollerdelegate> delegate; 

in childcontroller call message on delegate when pop view controller.

for case following called in didselectrowatindex method

nsstring *itemtopassback = @"pass value parentcontroller"; [self.delegate additemviewcontroller:self didfinishenteringitem:itemtopassback]; 

that's childcontroller. in parentcontroller.h, tell parentviewcontroller import child , conform protocol.

import "childcontroller.h"

@interface parentcontroller : uiviewcontroller in parentcontroller.m implement following method our protocol

- (void)additemviewcontroller:(childcontroller *)controller didfinishenteringitem:(nsstring *)item {     nslog(@"this returned childcontroller %@",item); } 

the last thing need tell childcontroller parentcontroller delegate before push childcontroller on nav stack.

childcontroller *childcontroller = [[childcontroller alloc] initwithnib:@"childcontroller" bundle:nil]; childcontroller.delegate = self [[self navigationcontroller] pushviewcontroller:childcontroller animated:yes]; 

Comments

Popular posts from this blog

javascript - jQuery: Add class depending on URL in the best way -

caching - How to check if a url path exists in the service worker cache -

Redirect to a HTTPS version using .htaccess -