我正在尝试在iphone上创建一个规划师应用程序。我想在另一个视图的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中添加一个新的值/项到现有的字典/数组(行)中)?
提前感谢!
如果我理解正确的话,你应该这样做:
[analysisArray addObject:newDictionary];
你是这个意思吗?
编辑:用新字典替换条目0处的字典:
int row = 0;
[analysisArray replaceObjectAtIndex:row withObject:newDictionary]
在项目0处设置一个单独的键:
int row = 0;
rowDictionary = [analysisArray objectAtIndex:row];
[rowDictionary setValue:value forKey:key];