Проблемы с отображением % в nsrunalertpanel
-
12-10-2019 - |
Вопрос
Я разрабатываю настольное приложение, где я хочу показать сообщение на панели оповещения, используя nsrunalertpanel. Я делаю следующие вещи:
NSString *title = @"% Test";
NSString *message = @"% Test Message";
NSRunAlertPanel(title, message, @"Ok" ,@"Cancel" ,nil);
Панель оповещения показывает название правильно. т.е. тест, но сообщение является сообщением EST; Я хочу отобразить % тестового сообщения.
Как решить эту проблему?
Заранее спасибо.
Нет правильного решения
Другие советы
Попробуй это :
NSString *title = @"% Test";
NSString *message = @"%% Test Message";
NSRunAlertPanel(title, message, @"Ok" ,@"Cancel" ,nil);
Почему?
NSRunAlertPanel
Использование NSBeginAlertSheet
. Анкет Глядя на Документация для nsbeginalertsheet Вы можете видеть, что после MSG есть больше параметров (указано ...
).
Это говорит нам о том, что заголовок - это просто строка буквально отображается, но сообщение может иметь параметры формата так же, как [NSString stringWithFormat:]
делает.
То, как строка указывает, что будет параметр, используя % символа, т.е. % я имею в виду 'Поместите здесь целое число', %@ означает 'Поместите описание объекта здесь' Вы только что положили % само по себе, что очень запуталось!
Double %% означает, что этот процент не говорит вам, что я хочу, чтобы вы поместили там что -нибудь особенное, я просто хочу %, пожалуйста.