作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
是否可以像这样运行 NSTimer:
NSTimer *f = [[NSTimer alloc] initWithFireDate:[NSDate date]
interval:.05
target:self
selector:@selector(checkForCollisions)
userInfo:nil repeats:YES];
NSRunLoop *runner = [NSRunLoop currentRunLoop];
[runner addTimer:f forMode: NSDefaultRunLoopMode];
[f release];
但指定我希望它运行的次数?那么,如果我想让它只运行 2 秒(假设间隔为 .05),我可以指定它运行 40 次吗?这可能吗?
最佳答案
你的ViewController.h
NSTimer *f;
NSInteger counter;
你的ViewController.m
- (void)setup {
// initialization code
counter = 0;
f = [[NSTimer alloc] initWithFireDate:[NSDate date]
interval:.05
target:self
selector:@selector(checkForCollisions)
userInfo:nil repeats:YES];
NSRunLoop *runner = [NSRunLoop currentRunLoop];
[runner addTimer:f forMode: NSDefaultRunLoopMode];
}
- (void)checkForCollisions {
// handle check
counter++;
if (counter >= 40) {
[f invalidate];
[f release];
}
}
关于ios - 运行 NSTimer 一定次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8116758/
我正在尝试开发右边框/Angular 具有特定 Angular (30°) 的表格。我见过一些类似的解决方案,但它们都无法在一定程度上发挥作用。如果我想从 30° 改变到 20°,我不想花太多力气。
我是一名优秀的程序员,十分优秀!