2011-08-19 85 views
0

我想在iphone上創建一個規劃應用程序。我想在另一個視圖中在我的plist中創建一個子鍵/行(這意味着,我將首先在一個視圖中創建plist的結構,而在另一個視圖中,我想將另一個項添加到已創建的plist中)。我希望我的plist看起來像這樣:如何將子項目/級別添加到plist(多級)的子項?

根(陣列)

Item 0 (Dictionary) 
     ProjectName (String) 
     Stages (Dictionary) 
       Analysis (Array) 
         ^Item 0 (Dictionary) 
           Levels (String) 
           Tools (String) 
         ^Item 1 (Dictionary) 
           Levels (String) 
           Tools (String) 
       Develop (Array) 

Item 1 (Dictionary) 
     ProjectName (String) 
     Stages (Dictionary) 
       Analysis (Array) 
         ^Item 0 (Dictionary) 
           Levels (String) 
           Tools (String) 
         ^Item 1 (Dictionary) 
           Levels (String) 
           Tools (String) 
       Develop (Array) 

^現在,我沒有在我的分析陣列和我的項目0和項目1想添加它,但我不知道正確的代碼來做到這一點。

因此,在我的第一個視圖中,我將能夠添加一個新項目,並添加後,它將保存在我的plist中作爲字典,第一項0(我已經編碼,當用戶保存新項目階段字典的分析和開發數組將在我的plist中創建)。
- 如果用戶選擇添加更多項目,則會有項目1,項目2等。

在用戶創建(保存)一個新項目後,他/她可以進入第二個視圖,他/她可以選擇一個階段(分析/開發)。

例如,用戶選擇分析階段,他/她將被帶到另一個視圖,該視圖允許用戶爲特定階段添加級別。

我面臨的問題是我如何在plist中添加另一個字符串項目到我現有的分析階段(如何將新值/項目添加到plist中的現有字典/數組(行) )?

在此先感謝!

回答

1

如果我理解正確的話,你會做這樣的事情:

[analysisArray addObject:newDictionary]; 

那是什麼意思?

編輯:要更換的項目0的字典,一個新問題:

int row = 0; 
rowDictionary = [analysisArray objectAtIndex:row]; 
[rowDictionary setValue:value forKey:key]; 
+0

您好,感謝您的答覆:)但是如果:

int row = 0; [analysisArray replaceObjectAtIndex:row withObject:newDictionary] 

要在項目設置爲0的單獨密鑰根數組中有2項,那麼我將如何指定哪一個我將添加到? (例如,我想在第0項中添加另一個字典,我將如何編碼它,以便它將保存到項目0中,而不是項目1或創建一個新項目)謝謝(: – Grace

+0

我會添加更多的示例給我回答... –

+0

感謝這個作品(但是,如果我不知道我要添加到哪一行,例如,如果用戶在第一個視圖表中單擊項目0,那麼我會假設將它保存在項目0中,但是如果他/她點擊項目1我必須將數據保存到項目1中。對不起,請問這麼多問題。謝謝你的時間(: – Grace

相關問題