2009-07-22 3 views
1

Я получаю это предупреждение в xcode 3.1.3 iphone os 3.0.предупреждение no-method описаниеWithCalendarFormat: timeZone: locale found

Этот метод также недоступен в классе NSDate. Но я получаю дату от этого метода.

Может кто-нибудь скажет мне, как я могу избавиться от этого предупреждения ????

+0

Не могли бы вы опубликовать строку исходного кода, которая получает это предупреждение и, если возможно, команду сборки для исходного файла? Просто перетащите строку «Компиляция ...» из окна «Результаты сборки». – cdespinosa

ответ

0

Это недокументированные частные методы API. Используя их, ваше приложение будет отклонено Apple. Используйте только документированные методы NSDate.

8

Вместо этого вы захотите использовать NSDateFormatter. descriptionWithCalendarFormat: timeZone: locale: недавно попал в список «non-public API» и является основанием для отклонения вашего приложения.

Вот пример того, как можно использовать NSDateFormatter:

NSDateFormatter *dateFormatter = [[NSDateFormatter alloc] init]; 
[dateFormatter setDateFormat:@"MMM d y"]; 
NSString *dateString = [dateFormatter stringFromDate:date]; 
return dateString; 

Обратите внимание, что строка формата является стандартом Unicode, а не версия Printf стиля. Вы можете найти здесь: http://unicode.org/reports/tr35/tr35-6.html#Date_Format_Patterns

+0

Отличный ответ спасибо –