Могу ли я иметь константу, определенную для категории в objc - PullRequest
0 голосов
/ 08 октября 2019

NSError имеет userInfo, который является словарем. Я хотел бы иметь кастом NSErrorUserInfoKey. Я подумал о категории для NSError, где я могу определить этот ключ как постоянную строку. Я знаю, что у меня не может быть свойств в категориях, но возможно ли и правильно ли добавить константу в категорию?

1 Ответ

0 голосов
/ 09 октября 2019

Да, у нас есть возможность добавить свойства в категорию, используя

objc_setAssociatedObject 

и

objc_getAssociatedObject

objc_setAssociatedObject используется для установки значения objc_getAssociatedObject используется для получения значения

О константах. Я бы создал другой класс для константы FOUNDATION_EXPORT и использовал бы его здесь. Что-то вроде CustomErrorUserInfoKeys.h

...