ローカライズされたアプリの 1 つで、スペイン語がデフォルトの言語になっています。ただし、ユーザーは英語をデフォルト言語として設定し、その地域を「スペイン」に設定することもできます。
問題は、アプリ内で次のコードを使用していることです。
int day = (60*60*24);
NSDate *nextNextDay = [[NSDate alloc] initWithTimeIntervalSinceNow:(day*2)];
NSString *someString = [[dateFormatter stringFromDate:nextNextDay] capitalizedString];
NSLog(@"The day: %@", someString);
結果は、(このシナリオでは) スペイン語であるデフォルトのロケールでの曜日の名前です。そのため、結果として「Monday」が返される代わりに、「Lunes」が返されます。もちろん、アプリの残りの部分が英語である場合、これは非常に醜いです.
ロケールをハードコーディングせずにこれを解決するにはどうすればよいですか?