私は現在、日付を多用するiPhone用のアプリを書いています。NSDateFormatter日付を文字列に変換するために使用しています。便利なNSDateFormatterことに、リージョン形式に基づいてユーザーの言語で文字列を自動的に作成します。考えられるすべての言語と地域でアプリをローカライズすることはできないため、アプリは英語、ドイツ語、スペイン語、およびその他のいくつかの言語でのみローカライズされます。
たとえば、アプリがフランス語のユーザー向けに実行されている場合、アプリのデフォルトは英語になります。それは問題ありませんが、日付は引き続きフランス語を使用して変換されます。これにより、「Month:July」ではなく「Month:Juillet」のような文字列になります。
NSDateFormatterアプリが実行されている言語を常に使用するようにするにはどうすればよいですか?NSLocalizedString()識別子をローカライズするために使用できることは知っていますNSLocaleが、これではリージョン設定が正しくなくなります。
ユーザーが通常「en_GB」リージョンを使用していて、アプリが一般的に英語にローカライズされているNSDateFormatter場合、「en」や「en_US」だけでなく「en_GB」を使用したいと思います。ユーザーがフランス語を実行するときは、ロケールを「en」にし、アプリを「de_DE」リージョンで実行する場合は、アプリがドイツ語をサポートしているため、日付形式も「de_DE」にする必要があります。
よろしく、ファビアン