在RTL布局中强制UIImageView对齐LTR

时间:2018-03-12 02:15:35

标签: ios swift localization

我有一个iOS应用程序,我有2种语言阿拉伯语/英语,阿拉伯语是RTL语言所以当我将语言切换到阿拉伯语时,使用RTL布局运行的应用程序正在运行

当整个布局是RTL时,我只需要强制UIImageView为LTR,所以我使用了这段代码:

class HomeViewController: UIViewController {
@IBOutlet weak var userImage:UIImageView! 


override func viewDidLoad()
{
super.viewDidLoad()

    self.userImage.semanticContentAttribute = .forceLeftToRight
}


}

但它不起作用且UIImageView仍处于正确位置

任何帮助我该怎么做?

  

这是我需要制作图像的模拟器截图   NavigationController处于左侧位置

enter image description here

2 个答案:

答案 0 :(得分:0)

首先用XML(源代码)打开你的故事板然后

搜索leading(在约束中)并将其替换为left并将其替换为trailing
搜索right(在约束中)并将其替换为groupHeaderTpl

第二个选项是使用语义属性

enter image description here

如果您使用标签文本,那么这是我的问题

Combine Two Language Text RTL & LTR

希望它对你有所帮助

答案 1 :(得分:0)

如果使用自动布局约束:

1-视图的双尾或前导约束

2-单击“第一项”下拉菜单

3-取消选中“尊重语言方向”

4-您可能还需要对“第二项”执行步骤2和3。

您需要对所有带有尾部和前部约束的视图执行此操作,以将其替换为左右约束。