Приведение значения из объекта NSNotification - PullRequest
2 голосов
/ 15 мая 2010

Как я могу привести объект в NSNotification к целому числу и к строке? Когда я регистрирую уведомление на консоли, я получаю ...

NSConcreteNotification 0x20af70 {name = kMessageCountNotification; object = 1}

Но когда я устанавливаю текстовое значение UILabel на это значение, я получаю 72855952

1 Ответ

3 голосов
/ 15 мая 2010

Документация класса, отправившего это уведомление, должна содержать информацию, что это за тип уведомления и что он отправляет в своем объекте.

Вы можете получить доступ к объекту, отправленному с использованием object метода:

ClassOfObjectSent *obj = [notification_you_have_received object];

Обратите внимание, что это указатель на объект, а не скалярное значение. Если объект NSNumber, вы можете получить int следующим образом:

int i = [obj intValue];

Если это NSString, вы можете использовать его напрямую или - безопаснее - создать свою собственную копию (если вы используете Cocoa Touch или создаете приложение без GC Mac, вам придется release копия). *

NSString *txt = [obj copy];
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...