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