2012-04-02 77 views
0

我猜這裏有一個簡單的解決方案,但我嘗試了一些東西,似乎什麼都沒有解決。我想要做的是能夠遍歷模型中存儲的值,以便以不同的方式以圖形方式呈現它們。在Restkit模型中迭代關鍵值

我可以訪問Web服務並完美存儲數據。作爲一個更大模型的一部分,我有一個可設定不同目標的目標模型。

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。除非你有一個更簡單的解決方案來存儲和訪問密鑰和價值?再次感謝!標記爲答案。 – 2012-04-02 23:28:51

+0

我打算將該示例顯示爲NSDictionary,但出於某種原因,我以爲你想要一個數組。我改變了我的例子來反映NSDictionary。 – 2012-04-05 16:51:19