Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 如何从NSUserDefaults中的对象获取密钥?_Objective C_Macos_Cocoa - Fatal编程技术网

Objective c 如何从NSUserDefaults中的对象获取密钥?

Objective c 如何从NSUserDefaults中的对象获取密钥?,objective-c,macos,cocoa,Objective C,Macos,Cocoa,我用这个从键中获取对象 NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults]; NSString *object=[defaults objectForKey:someKey]; 我怎样才能得到相反的效果?来自对象的键? 差不多 NSString *key=[defaults keyForObject:object]; 谢谢您可以获得NSUserDefaults字典(使用dictionaryRepresentatio

我用这个从键中获取对象

 NSUserDefaults *defaults=[NSUserDefaults standardUserDefaults];
 NSString *object=[defaults objectForKey:someKey];
我怎样才能得到相反的效果?来自对象的键? 差不多

NSString *key=[defaults keyForObject:object];

谢谢

您可以获得
NSUserDefaults
字典(使用
dictionaryRepresentation
方法)。然后可以使用dictionary方法

- (NSSet *)keysOfEntriesPassingTest:(BOOL (^)(id key, id obj, BOOL *stop))predicate


获取对象的键。

您可以获取
NSUserDefaults
字典(使用
dictionaryRepresentation
方法)。然后可以使用dictionary方法

- (NSSet *)keysOfEntriesPassingTest:(BOOL (^)(id key, id obj, BOOL *stop))predicate


获取对象的密钥。

为什么要这样做?我认为,从用户默认值中获取对象的键不是一个好主意(即使可能)。NSUserDefaults类通常用于存储应用程序的设置。因为我正在存储一些小信息。需要读回它,包括键和对象。你为什么要这样做?我认为,从用户默认值中获取对象的键不是一个好主意(即使可能)。NSUserDefaults类通常用于存储应用程序的设置。因为我正在存储一些小信息。需要读回它,包括键和对象。