Hi just a quick question what is the difference between – displayNameForKey:value: and – objectForKey: in NSLocale Class? I searched online but didn’t get it. Thank you.
displayNameForKey:value:
Returns the display name for the given value.
- (NSString *)displayNameForKey:(id)key value:(id)value
Parameters
key
Specifies which of the locale property keys value is (see “Constants”),
value
A value for key.
Return Value
The display name for value.
objectForKey:
Returns the object corresponding to the specified key.
- (id)objectForKey:(id)key
Parameters
key
The key for which to return the corresponding value. For valid values of key, see “Constants.”
Return Value
The object corresponding to key.
You use displayNameForKey:value: to get a label suitable for display based on the locale object you are calling. For instance:
will produce the output:
French locale in French is called ‘français (France)’
French locale in English is called ‘French (France)’
There are plenty of examples in the NSLocale Class Reference.