Формат String не является литеральным (потенциально небезопасным) предупреждением [дубликат]

Возможный дубликат:

Предупреждение: «формат не строковый литерал и аргументы формата

У меня есть следующая строка кода в моем приложении, над которым работал разработчик. Я изучаю основы Objective C и, когда я обновлял приложение, чтобы оно было совместимо с iPhone 5, я вижу следующее предупреждение (я не менял его код) Формат String не является литеральной строкой (потенциально небезопасной). Код выглядит следующим образом;

self.progressHud.labelText = [NSString stringWithFormat:message];   

Я нене знаю точно, что это значит, и неЯ не хочу загружать что-либо, что может быть либо проблемой безопасности, либо отклонено Apple. Любая помощь ценится от всех вас.

 Mat20 окт. 2012 г., 09:32
en.wikipedia.org/wiki/Uncontrolled_format_stringПожалуйста, найдите "уязвимости форматной строки " и ты'Вы найдете много потенциальных дыр в безопасности с этим типом вещи.
 ghr10 февр. 2013 г., 23:39
Это не дубликат предлагаемого вопроса. Приведенный вопрос касается предупреждения «формат не строковый литерал и аргументы формата тогда как этот вопрос относится к предупреждениюФормат String не является предупреждением о буквальной строке (потенциально небезопасной), Тщательный осмотр покажет, что предупреждения не совпадают, поэтому этот вопрос не является дубликатом. Это возможный дубликат этого вопроса:stackoverflow.com/questions/9961363/...

Ответы на вопрос(1)

Решение Вопроса

self.progressHud.labelText = [NSString stringWithFormat:@"%@", message]; 

В задаче C эта строка получает значения из любого формата, такого как int, float и т. Д., Для отображения метки. потому что элементы UILabel и IBOutlet отображают только значения NSString.

Однако, если вы неДля создания строки с несколькими переменными было бы эффективнее просто использовать:

self.progressHud.labelText = message;   
 jrturton20 окт. 2012 г., 09:39
Код правильный, но можете ли вы объяснить, почему?
 Gregory Ortiz20 окт. 2012 г., 09:53
Это сработало! Большое спасибо @premkumar

Ваш ответ на вопрос