私は以前の質問から英語とアラビア語のプロジェクトを作る方法を学びました。
githubの同じプロジェクト
今、私がやったことは、このプロジェクトにラベルを追加して、「ようこそ」と書いたものです。
問題はレイアウトです。私が英語のテキストを持っているとき、それは(明らかに)左側にありますが、アラビア語のテキストが来るとき、それは右から左に始まるべきです。ただし、左揃えのみです。
そのような場合にどのように対処するかについて何か考えはありますか?
以下はスクリーンショットです...
私は以前の質問から英語とアラビア語のプロジェクトを作る方法を学びました。
今、私がやったことは、このプロジェクトにラベルを追加して、「ようこそ」と書いたものです。
問題はレイアウトです。私が英語のテキストを持っているとき、それは(明らかに)左側にありますが、アラビア語のテキストが来るとき、それは右から左に始まるべきです。ただし、左揃えのみです。
そのような場合にどのように対処するかについて何か考えはありますか?
以下はスクリーンショットです...
以下は私がしたことです...
ここに示すように、プロジェクトフォルダ(english.ttf&arabic.ttf)にフォントを追加しました。
Localizable.strings
追加("myFont"="ACS Zomorrod";
アラビア語)&"myFont"="Armalite Rifle";
(英語)
その後、それらのフォントを状態にしました
NSString *myFont = localize(@"myFont");
NSString *cpFont = @"Armalite Rifle";
if ([myFont isEqualToString:cpFont]) {
self.myLabel.textAlignment = NSTextAlignmentLeft; // this is for English
} else {
self.myLabel.textAlignment = NSTextAlignmentRight; // this is for Arabic
}
"myLang"="arabic";
また、 &"myLang"="english";
inLocalizable.strings
を使用して、次のようなコードを使用することもできます。
NSString *myLang = localize(@"myFont");
NSString *myActualLang = @"english";
if ([myLang isEqualToString:myActualLang]) {
self.myLabel.textAlignment = NSTextAlignmentLeft; // this is for English
} else {
self.myLabel.textAlignment = NSTextAlignmentRight; // this is for Arabic
}
フォントを変更した場合、明日は最初のオプションではなく2番目のオプションを選択しNSString *cpFont = @"Armalite Rifle";
ます。すべてのファイルで、行ごとに変更を行う必要があります。
条件付きif-else
フォントを確認し、配置を変更します。
または、
それぞれに2つのラベルを作成し、左右と左右の位置合わせを設定し、言語を確認してどちらかにテキストを表示します。