ios - NSTimer with error message? -
i trying implement nstimer counting down 5 seconds. getting message "no known class method selector scheduledtimerwithtimeinterval:target:selector:userinfo:repeats....." missing? if @ bottom of mtpopupwindow.m in method -void(showinview) find code error emerges.
regards
mtpopupwindow.h
@class mtpopupwindow; @protocol mtpopupwindowdelegate <nsobject> @optional - (void) willshowmtpopupwindow:(mtpopupwindow*)sender; - (void) didshowmtpopupwindow:(mtpopupwindow*)sender; - (void) willclosemtpopupwindow:(mtpopupwindow*)sender; - (void) didclosemtpopupwindow:(mtpopupwindow*)sender; @end @interface mtpopupwindow : uiview +(mtpopupwindow*)showwindowwithhtmlfile:(nsstring*)filename; +(mtpopupwindow*)showwindowwithhtmlfile:(nsstring*)filename insideview:(uiview*)view; - (void)timerfiremethod; -(void)showinview:(uiview*)v; +(void)setwindowmargin:(cgsize)margin; @property (strong, nonatomic) nsstring* filename; @property (strong, nonatomic) uiwebview* webview; @property (weak, nonatomic) id <mtpopupwindowdelegate> delegate; @property (nonatomic) bool usessafari; @property (nonatomic, retain) nstimer* timer; @end
mtpopupwindow.m
#import "mtpopupwindow.h" #import "quartzcore/quartzcore.h" #define kclosebtndiameter 30 #define kdefaultmargin 18 static cgsize kwindowmarginsize; @interface mtpopupwindow() <uiwebviewdelegate> { uiview* _dimview; uiview* _bgview; uiactivityindicatorview* _loader; nstimer *timer; } @end @interface mtpopupwindowclosebutton : uibutton + (id)buttoninview:(uiview*)v; @end @interface uiview(mtpopupwindowlayoutshortcuts) -(void)replaceconstraint:(nslayoutconstraint*)c; -(void)layoutcenterinview:(uiview*)v; -(void)layoutinview:(uiview*)v setsize:(cgsize)s; -(void)layoutmaximizeinview:(uiview*)v withinset:(float)inset; -(void)layoutmaximizeinview:(uiview*)v withinsetsize:(cgsize)insetsize; @end @implementation mtpopupwindow @synthesize filename = _filename; @synthesize webview = _webview; @synthesize usessafari = _usessafari; @synthesize delegate = _delegate; @synthesize timer; -(void)showinview:(uiview*)v { ....... self.timer = [nstimer scheduledtimerwithtimeinterval:5 taget:self selector:@selector(timerfiremethod:) userinfo:nil repeats:no];
<---no class method selector scheduledtimerwithtimeinterval:target:selector....
} -(void)timerfiremethod:(nstimer *)thetimer{ nslog(@"bla bla time out"); mtpopupwindowclosebutton* btnclose = [mtpopupwindowclosebutton buttoninview:self]; [btnclose addtarget:self action:@selector(closepopupwindow) forcontrolevents:uicontroleventtouchupinside]; }
you misspelled 'target' 'taget' in method call. do:
self.timer = [nstimer scheduledtimerwithtimeinterval:5 target:self selector:@selector(timerfiremethod:) userinfo:nil repeats:no];
instead.
Comments
Post a Comment