我从我问的上一个问题中学会了如何制作英语和阿拉伯语项目。
github上的同一个项目
现在我所做的是在这个项目中添加了一个标签并写了"Welcome"。
问题是布局。当我有英文文本时,它在左侧(显然),但是当阿拉伯文本出现时,它应该从右到左开始。但它只与左对齐。
知道如何处理这种情况吗?
下面是截图...
我从我问的上一个问题中学会了如何制作英语和阿拉伯语项目。
现在我所做的是在这个项目中添加了一个标签并写了"Welcome"。
问题是布局。当我有英文文本时,它在左侧(显然),但是当阿拉伯文本出现时,它应该从右到左开始。但它只与左对齐。
知道如何处理这种情况吗?
下面是截图...
下面是我做的...
在项目文件夹(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
}
我会更喜欢第二个选项而不是第一个选项,因为如果我明天更改字体,我将不得不NSString *cpFont = @"Armalite Rifle";
在所有文件的行中进行更改。
条件 if-else
检查您的字体并更改对齐方式。
或者,
为他们每个人制作两个标签,设置他们的左-右和右-左对齐,并通过检查语言在其中一个上显示文本。