2013-04-03 4 views
3

В чем проблема с кодом ниже?[Класс NSDateFormatter]: сообщение отправлено на освобожденный экземпляр

NSDate *date = [NSDate date]; 
NSDateFormatter *formatter = [[NSDateFormatter alloc] init]; 
[formatter setDateStyle:NSDateFormatterShortStyle]; 
[formatter setTimeStyle:NSDateFormatterMediumStyle]; 
error.timestamp = [formatter stringFromDate:date]; 
[formatter release]; 

Я получаю эту ошибку ниже:

*** -[NSDateFormatter class]: message sent to deallocated instance 0x8c04f00 

Как я могу решить это?

Я не использую ARC.

+0

error.timestamp = [[форматировщик stringFromDate: дата] копия] ; а затем проверьте –

+0

@ Попей, я обновил свой вопрос. Спасибо за указание. – cateof

+0

код, похоже, исправлен. На какой строке вы получаете эту ошибку? –

ответ

3

Код, который вы опубликовали, является правильным.
Вы уверены, что получаете сообщение от кода, который вы опубликовали?
0 Вы можете установить exception breakpoint in Xcode, чтобы проверить, есть ли код вышеприведенного кода?

Если вы не повторно использовать NSDateFormatter, вы можете использовать следующий метод класса, чтобы получить строку даты в одной строке кода:

[NSDateFormatter localizedStringFromDate:date dateStyle:NSDateFormatterShortStyle timeStyle:NSDateFormatterMediumStyle] 
Смежные вопросы