views:

389

answers:

2

I'm creating a UIDatePicker programmatically, and setting its locale with the following code:

datePicker.locale = [[[NSLocale alloc] initWithLocaleIdentifier:@"es_ES"] autorelease];

The datepicker still appears in English (or whatever language I've set the phone to). Anyone have any idea why this does nothing, or how to fix it?

A: 

Try changing the locale of the UIDatePicker's calendar as well:

NSLocale *locale = [[[NSLocale alloc] initWithLocaleIdentifier:@"es_ES"] autorelease];
datePicker.locale = locale; 
datePicker.calendar = [locale objectForKey:NSLocaleCalendar]; 
Don
+1  A: 

As answered here http://stackoverflow.com/questions/1151335/can-i-localize-a-uidatepicker/2265984#2265984, the picker display depends on country settings, not on language settings.

In your example you are changing the language locale only.

Vladimir Grichina