gpt4 book ai didi

ios - NSTimer 选择器没有被调用

转载 作者:行者123 更新时间:2023-11-29 04:33:53 25 4
gpt4 key购买 nike

我编写了以下代码来运行NSTimer。但是 NSTimer 选择器没有被调用。

.h 文件

@interface XViewController : UIViewController {
NSTimer *repeatServerRequest;
}

@property(nonatomic, retain) NSTimer *repeatServerRequest;

- (void)checkForMinimunOnetimePinEntry;
- (void) initializeTimer;
- (void)stopTimer;

.m文件

@synthesize repeatServerRequest;

- (void)checkForMinimunOnetimePinEntry {
// some code
}

- (void) initializeTimer {
repeatServerRequest = [NSTimer scheduledTimerWithTimeInterval:15.0
target:self
selector:@selector(checkForMinimunOnetimePinEntry)
userInfo:nil
repeats:YES];
}

- (void)stopTimer {
[repeatServerRequest invalidate];
[repeatServerRequest release];
repeatServerRequest = nil;

// [self.repeatServerRequest invalidate];
// [self.repeatServerRequest release];
// self.repeatServerRequest = nil;
}

我做错了什么?

还请回答我哪个是正确的:self.repeatServerRequest 还是简单的repeatServerRequest?提前致谢!

最佳答案

问题在于您将计时器分配给类字段,而不是属性。

要使此代码正常工作,只需将 self. 放在 repeatServerRequest = 之前。

当您使用self.repeatServerRequest时,编译器会调用[self setRepeatServerRequest:...]并保留自动释放的计时器。

关于ios - NSTimer 选择器没有被调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11310500/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com