希望有人可以帮助解决这个问题.尝试使用该-timeIntervalSinceNow方法时,我一直收到错误的访问错误.我在这个类中有一个变量NSDate *startDate,我已经添加了@property (nonatomic, retain) NSDate *startDate;
startDate 在这里的代码中使用:
startDate = [NSDate date];
updateTimer = [NSTimer scheduledTimerWithTimeInterval:0.1
target:self
selector:@selector(updatePlaybackPosition:)
userInfo:nil
repeats:YES];
}
Run Code Online (Sandbox Code Playgroud)
}
- (void)updatePlaybackPosition:(NSTimer *)timer {
NSTimeInterval interval = [startDate timeIntervalSinceNow];
Run Code Online (Sandbox Code Playgroud)
程序到达 [startDate timeIntervalSinceNow]时会出现错误的访问错误.从我读过的关于这个主题的其他帖子来看,答案通常似乎与保留日期有关.所以,我不确定我错过了什么.任何帮助将非常感激!
你NSDate的定时器被解雇之前你被自动释放.更新:确保使用您声明的属性而不是实例变量self..这将妥善处理你的保留.
self.startDate = [NSDate date];
Run Code Online (Sandbox Code Playgroud)
然后
- (void)updatePlaybackPosition:(NSTimer *)timer {
NSTimeInterval interval = [self.startDate timeIntervalSinceNow];
Run Code Online (Sandbox Code Playgroud)
[NSDate date]返回给你一个 autoreleased NSDate。如果您想在返回值的方法之外使用该值,则必须使用retain该值(并且release在使用完毕后也必须使用该值)。
| 归档时间: |
|
| 查看次数: |
1475 次 |
| 最近记录: |