我宣布:
NSMutableDictionary* generalSettingsDict;
我的.h
我是init:
generalSettingsDict = [[NSMutableDictionary alloc] initWithCapacity:5];
在viewWillAppear 中的
我设置:
[generalSettingsDict setValue:[NSNumber numberWithBool:control.on]
forkey:[NSNumber numberWithInt:control.tag]];
在方法中:
-(void)settingChanged:(UISwitch*)control forEvent:(UIEvent *)event
我得到“NSMutableDictionary可能无法响应setValue:forkey:”,并且应用程序在运行时崩溃。
请帮助:(
答案 0 :(得分:25)
A)forkey:
应为forKey:
。资本化很重要。
B)setValue:forKey:
是KVC方法。它可以像你期望的那样工作,但是用于NSMutableDictionary的正确方法是setObject:forKey:
答案 1 :(得分:4)
你想要setObject:forKey:
。 setValue:forKey:
是键值编码协议的一部分。 NSMutableDictionary
提供setObject:forKey:
。