2012-04-02 5 views
0

Я предполагаю, что здесь есть простое решение, но я пробовал что-то, и ничего не получается. То, что я хотел бы сделать, - это выполнить итерацию сохраненных значений в модели, чтобы я мог представить их по-разному графически.Итерации по ключевым значениям в модели Restkit

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

GoalsModel выглядит

@class RoundGoalsModel; 

@interface RoundGoalsModel : NSObject { 

    NSNumber* _scoreGoal; 
    NSNumber* _parsGoal; 
    NSNumber* _birdiesGoal; 
} 

@property (nonatomic, retain) NSNumber* scoreGoal; 
@property (nonatomic, retain) NSNumber* parsGoal; 
@property (nonatomic, retain) NSNumber* birdiesGoal; 

@end 

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

Я пробовал придать его массиву и другим вещам, которые, похоже, не работают. Любые советы или предложения, указывающие на меня в правильном направлении, были бы замечательными. Благодаря!

ответ

1

Ваша проблема не в проблеме RestKit, это просто проблема с вашим дизайном. Поскольку у вас уже есть данные, помещенные в отдельные поля, вы можете просто добавить новое поле, чтобы вернуть их в массив.

.h

@property(readonly, retain)NSDictionary *allProperties; 

.m

@synthesize allProperties; 

- (NSDictionary*)allProperties 
{ 
    return [NSDictionary dictionaryWithObjectsAndKeys: _scoreGoal, @"scoreGoal", _parsGoal, @"parsGoal", _birdiesGoal, @"birdiesGoal", nil]; 
} 

Тогда вы могли бы легко перебрать словарь и делать все, что вы хотите.

+0

Спасибо! Я знал, что это должно быть что-то простое. Это у меня на правильном пути. Мне нужно уметь устанавливать ключ так же, как и значение, потому что этот ключ будет для меня важным, чтобы я делал то, что мне нужно на стороне слоя представления. Я буду смотреть в NSDictionary, я бы подумал. Если у вас нет более простого решения для хранения и доступа к ключу и значению? Еще раз спасибо! Отметив это как ответ. –

+0

Я собирался показать пример как NSDictionary, но по какой-то причине я думал, что вам нужен массив. Я изменил свой пример, чтобы отразить NSDictionary. –

Смежные вопросы