Objective-C получить свойство класса из строки - PullRequest
29 голосов
/ 30 мая 2011

Я слышал ряд похожих вопросов для других языков, но я ищу конкретный сценарий.

В моем приложении есть модель базовых данных под названием «Запись», в которой есть несколько столбцов./ свойства, такие как «дата, столбец1 и столбец2».Чтобы сохранить чистоту программирования, чтобы я мог адаптировать свое приложение к нескольким сценариям, поля ввода сопоставляются со свойством Core Data внутри plist (например, у меня есть строковая переменная с именем «dataToGet» со значением «column1».

Как извлечь свойство "column1" из класса Record с помощью переменной dataToGet?

1 Ответ

82 голосов
/ 30 мая 2011

Механизм Key Value Coding позволяет вам взаимодействовать со свойствами класса, используя строковые представления имен свойств.Так, например, если у вашего Record класса есть свойство с именем column1, вы можете получить доступ к этому свойству следующим образом:

NSString* dataToGet = @"column1";
id value = [myRecord valueForKey:dataToGet];

Вы можете адаптировать этот принцип к вашим конкретным потребностям.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...