我編程遊戲,有40個級別,我存儲在我的.plist各級數據被訪問的屬性。這很好,但現在我試圖實現多個級別,我正在尋找一種方法來調用基於級別的單例屬性,而無需手動編碼開關/案例。我想這樣做如下:如何動態地更改
這是我用它來拉我的數據的代碼,但你可以看到,我已經硬編碼的「dictionaryLevel1Data」屬性。
int capacity = [[sharedDataManager.dictionaryLevel1Data objectForKey:@"typeWarrior"] intValue];
我想設置一個變量,並具有被稱爲基於這樣的單身人士的屬性,我知道這是行不通的。請注意我將如何替換「dictionaryLevel1Data」
NSString level = @"1";
int capacity = [[sharedDataManager.[NSString stringWithFormat:@"dictionaryLevel%@Data", level] objectForKey:@"typeWarrior"] intValue];
有關如何完成此操作的任何建議將不勝感激。我總是可以爲每個級別手動設置一個開關/外殼,但是每個關卡有40個關卡和50多個不同的對象類型,這會很粗糙,似乎必須有更好的方法。我討厭硬編碼值,喜歡簡化我的代碼,並簡單地更新通過泛型類和方法運行的變量。
謝謝Johannes!這完全是我在找的東西!感謝也鏈接另一篇文章,因爲它引導我回答我的另一個問題。乾杯! :0) – XBXSlagHeap
不客氣,很高興它也可以解決第二個問題! –