在多个级别设置nsmutabledictionary的值

时间:2012-01-11 17:05:53

标签: iphone objective-c ios cocoa ipad

我正在尝试为UserName设置一个关于此代码的密钥:

{
"CustomerAccount":{
"UserName":"String content"
};

我正在尝试在此处设置用户名,是否有人知道如何在字典中设置水平名称?

我的代码如下:

[mutabledictionary setObject:self.uitextfield.text forKey:UserName];

但是,这会将以下用户名设置为CustomerAccount而不是内部人员CustomerAccount。

任何帮助都将不胜感激。

感谢。

3 个答案:

答案 0 :(得分:3)

如果两级可变字典已经存在(从您的问题中不清楚),您需要将 setObject:forKey 消息发送到二级字典,如下所示:

[[mutabledictionary objectForKey:@"CustomerAccount"] setObject:self.uitextfield.text forKey:UserName];

答案 1 :(得分:2)

你可以添加一个子词典,如下所示:

NSDictionary *userAccount = [NSDictionary dictionaryWithObject:@"String Content" forKey:@"UserName"];
NSMutableArray *accounts = [NSMutableArray arrayWithObject:userAccount];

// do something with accounts
NSLog(@"%@", accounts);

答案 2 :(得分:0)

只需创建CustomerAccount的create数组并在NSDictionary中使用。使用

[NSDictionary dictionaryWithObjects:objects forKeys:keys];