2010-04-08 29 views
3

我創建了一個加載plist的單例類。當我嘗試設置一個值時,我總是收到這個錯誤:NSObject類的鍵值是否符合編碼?

[<MyPlist 0x1917bc0> setValue:forUndefinedKey:]:這個類不是關鍵測試的密鑰值。

我在plist文件中有一個鍵。密鑰被命名爲「測試」並且沒有與其關聯的值。我這樣設置值:

[[PlistManager sharedManager].plist setValue:@"the title value" forKey:@"test"]; 

我看一套的plist字典,看看這個從內部PlistManager:

po self.plistDictionary 
{ 
    test = ""; 
} 

我得到的只是因爲我離開PlistManager在調試器中的錯誤。 PlistManager是NSObject類型的。所以沒有xibs。關於我需要做什麼的任何想法?

+0

plist成員是NSDictionary? – 2010-04-08 04:54:47

+0

請注意,如果'plist'實際上是一個'NSMutableDictionary',使用'setObject:forKey:'比'setValue:forKey:'更有效,但兩者都可以。 – 2010-04-08 06:35:01

+0

@Barry:你確定這仍然是真的嗎?我認爲NSDictionary屬於非常優化的類。 – 2010-04-08 11:12:00

回答

17

難道是你使用非可變字典而不是NSMutableDictionary?

相關問題