Sunday, 15 September 2013

objective c - Delegate method not being executed -



objective c - Delegate method not being executed -

i have superviewcontroller named centerviewcontroller in have implemented uitabbarcontroller *tabvc , viewcontroller of tabvc featureviewcontroller, scheduleviewcontroller, feedbackviewcontroller, contactusviewcontroller.

they added :

tabvc.viewcontrollers = [nsarray arraywithobjects:featureviewcontroller,scheduleviewcontroller,feedbackviewcontroller,contactusviewcontroller, nil]; self addchildviewcontroller:tabvc]; [self.view addsubview:tabvc.view];

i have access function named loadhome in centerviewcontroller feedbackviewcontroller when feedback submitted successfully:

-(void) loadhome { [tabvc setselectedindex:0]; }

searched lot got 1 solution implement protocol delegate code of follows:

centerviewcontroller.h

@protocol centerviewcontrollerdelegate <nsobject> @required - (void)loadhome; @end @interface centerviewcontroller : uiviewcontroller <leftpanelviewcontrollerdelegate, uitabbarcontrollerdelegate> @property (nonatomic, assign) id<centerviewcontrollerdelegate> delegate; @end

feedbackviewcontroller.h

#import "centerviewcontroller.h" @interface feedbackviewcontroller : uiviewcontroller<uialertviewdelegate> { id<centerviewcontrollerdelegate> centerdelegate; } @property (nonatomic,assign) id<centerviewcontrollerdelegate> centerdelegate;

when button on alertview when feedback submitted clicked able phone call loadhome function of centerviewcontroller:

-(void)alertview:(uialertview *)alertview clickedbuttonatindex:(nsinteger)buttonindex { nslog(@"alert view button index %d", buttonindex); switch(buttonindex) { case 0: nslog(@"alert view button index within switch %d", buttonindex); [self.centerdelegate loadhome]; break; case 1: break; default: break; } }

the [self.centerdelegate loadhome]; getting executed doesn't take me function in centerviewcontroller.

no error nil happens.

the reason delegate method isn't executed because didn't set delegate (aka self.delegate nil).

here's total explanation on how utilize delegates including protocols , optimizations.

objective-c uiapplicationdelegate

No comments:

Post a Comment