2013-03-18 111 views
0

我試圖做一件沒有成功的事情。 我不知道這是一個概念錯誤還是別的什麼。Xcode:NSUserDefaults動態密鑰

我在NSUserDefaults中保存了一些數據,但是我想動態地創建密鑰,因爲我不能事先知道我將擁有多少個密鑰,因此會根據其他字符串動態創建它們。

這是爲了保存數據:

[defaults setObject:anObject forKey:@"aKey"]; 
[defaults synchronize]; 

這是我在做什麼

NSString *myString = @"aString"; 
[defaults setObject:anObject forKey:@"%@",myString]; 
[defaults synchronize]; 

不幸的是,它返回 「太多的參數的方法調用,預計2,有3個」

你認爲我有可能做什麼? 在此先感謝

回答

1

如果方法需要NSString,則無法指定格式。

更換

[defaults setObject:anObject forKey:@"%@",myString]; 

[defaults setObject:anObject forKey:[NSString stringWithFormat:@"%@", myString]]; 

或者乾脆:

[defaults setObject:anObject forKey:myString];