iOS プロジェクトのローカリゼーションを有効にする 2 つの方法を見つけました。
- ローカライズされた .xib ファイルの作成
- ローカライズされた .string ファイルの作成
私は両方の方法を試しましたが、両方の方法論について多くのことを読みました。しかし、どちらを使用する方が適切で、その理由は何ですか? 私を案内してください。
iOS プロジェクトのローカリゼーションを有効にする 2 つの方法を見つけました。
私は両方の方法を試しましたが、両方の方法論について多くのことを読みました。しかし、どちらを使用する方が適切で、その理由は何ですか? 私を案内してください。
本当に、それは依存します。私は通常、両方のミックスで終わります。レイアウトが本当に重要な場合は、別の .xibs を用意します。ただし、単一の .strings ファイルの方が作業がはるかに便利です。
(いいえ、ほとんどの場合、幅に合わせて調整することは洗練された解決策ではありません。)
最初の選択が正しい方法です。一番の理由は、すべての言語が同じ長さではないということです。通常、ドイツ語は英語よりも「広い」言語ですが、中国語は「狭い」言語です。つまり、UIButton のサイズが英語で 100px x 37px の場合、ドイツ語では 130px x 37px、中国語版では約 70px x 37px である必要があります。ローカライズされた文字列ファイルを作成する場合、この細かい制御はありません。欠点は、XIB を編集する場合 (別のボタンを追加するなど)、すべての XIB に追加する必要があることです。回避策は、1 つの XIB を設計して最も広い言語に対応し、ローカライズされた文字列ファイルを使用することですが、そうすると UI が洗練されたものに見えなくなります。つまり、最終的には「ユーザー向けの洗練された UI」と「追加の開発時間」に要約されます。
第 2 に、アラビア語などの一部の言語は右から左に記述されるため、それを反映するように XIB のレイアウトをカスタマイズする必要があります。(フォームの場合、UILabel が右に、UITextFields が左にあるのでしょうか?)