2013-05-18 5 views
1

Я хочу получить интервал между NSDate. Я использовал методы [NSDate timeIntervalSinceDate], но всегда возвращает ноль. Ниже мой код.Интервал между секундами между NSDate, но всегда всегда равен нулю.

NSLog(@"sent date : %@", message.sentDate); 
NSLog(@"prev: %@", _previousShownSentDate); 
NSLog(@"%d", [message.sentDate timeIntervalSinceDate:_previousShownSentDate]); 

Здесь, message.sentDate, _repviousShownSentDate являются NSDate объект.

Но в журналах разница секунд всегда равна нулю.

[1363:907] sent date : 2013-05-16 01:36:22 +0000 
[1363:907] prev: 2013-05-16 01:36:17 +0000 
[1363:907] 0 
[1363:907] sent date : 2013-05-16 01:36:25 +0000 
[1363:907] prev: 2013-05-16 01:36:17 +0000 
[1363:907] 0 

Третья строка журнала должна быть 5 (01:36:22 и 01:36:17). но он равен нулю.

Я не понимаю, что я делаю ошибку.

ответ

2

Потому что «%d» является целым числом, а значение, возвращаемое «timeIntervalSinceDate:», является двойным (NSTimeInterval).

Используйте «%4.2f» в этой третьей строке «NSLog».

+0

Это работает. Благодарю. –

Смежные вопросы