Objective c 向NSDictionary添加对象
我想用UITextFields中的文本填充NSDictionary。这是我尝试的Objective c 向NSDictionary添加对象,objective-c,ios,nsdictionary,Objective C,Ios,Nsdictionary,我想用UITextFields中的文本填充NSDictionary。这是我尝试的 [self delegate]populate:[NSDictionary dictionaryWithObjectsAndKeys: [self.username.text], @"username", [self.password.text], @"password"
[self delegate]populate:[NSDictionary dictionaryWithObjectsAndKeys:
[self.username.text], @"username",
[self.password.text], @"password"
nil];
但我得到了预期的标识符。
这里怎么了?为什么不能直接通过[self.*]呢
我也试过了
[self delegate]populate:[NSDictionary dictionaryWithObjectsAndKeys:
[NSString stringWithFormat:@"%@", [self.username.text]], @"username",
[NSString stringWithFormat:@"%@", [self.password.text]], @"password"
nil];
仍然不工作
[self.username.text]
是无效语法
消息发送语法为[对象消息]
。点语法是object.property
。由于属性访问通常会产生一个对象,所以可以将它们组合在一起,但仍然需要一个消息部分。如果只是将点语法放在括号内,则缺少消息部分:[object.property]
将其更改为self.username.text
(无括号)或[self.username text]
正如bdesham指出的(我认为这只是一个输入错误),您在整个代码段中缺少了大括号<代码>[自我委托]是您要向其发送消息的对象填充
:
[[self delegate] populate:<another message send here, to NSDictionary>];
[[self delegate]填充:];
[self.username.text]
语法无效
消息发送语法为[对象消息]
。点语法是object.property
。由于属性访问通常会产生一个对象,所以可以将它们组合在一起,但仍然需要一个消息部分。如果只是将点语法放在括号内,则缺少消息部分:[object.property]
将其更改为self.username.text
(无括号)或[self.username text]
正如bdesham指出的(我认为这只是一个输入错误),您在整个代码段中缺少了大括号<代码>[自我委托]是您要向其发送消息的对象填充
:
[[self delegate] populate:<another message send here, to NSDictionary>];
[[self delegate]填充:];
试试这个:
[[self delegate] populate:[NSDictionary dictionaryWithObjectsAndKeys:
[self.username.text], @"username",
[self.password.text], @"password"
nil]];
看起来您在整个邮件中缺少[]
试试这个:
[[self delegate] populate:[NSDictionary dictionaryWithObjectsAndKeys:
[self.username.text], @"username",
[self.password.text], @"password"
nil]];
看起来您在整个邮件中缺少
[]
OP还需要在整个表达式周围加上括号:[[self delegate]populate:…]
我将其更改为[self.username text]。谢谢OP还需要在整个表达式周围加上括号:[[self delegate]populate:…]
我将其更改为[self.username text]。谢谢