当属性在 iOS 中正确时,UITextfield 文本显示为左对齐?

Kar*_*gat 4 localization text-alignment uitextfield ios swift

我正在开发具有本地化功能的英语/阿拉伯语应用程序。在一个文本字段中,我已将textAlignment属性设置为right. 但是内容,数字,显示在右侧。
我通过调试textAlignment属性值仔细检查了它,它确实是right.

我以编程方式设置了对齐属性,因为它会根据语言选择(即点击按钮)而改变。然后我在其中设置值并显示为右对齐。

问题是当我选择文本字段时,内容突然移动到右侧并显示为右对齐。

我使用以下行以编程方式将布局更改为 RTL 和 LTL:

UIView.appearance().semanticContentAttribute = .forceRightToLeft
Run Code Online (Sandbox Code Playgroud)

我找不到解决办法。

Sh_*_*han 9

试试这个方法

 if isLangEn
    { 
        self.textF.textAlignment = NSTextAlignment.left  
        self.parentViewOfTextF.semanticContentAttribute = UISemanticContentAttribute.forceLeftToRight  
    }
    else
    {   
        self.textF.textAlignment = NSTextAlignment.right
        self.parentViewOfTextF.semanticContentAttribute = UISemanticContentAttribute.forceRightToLeft  
    }
Run Code Online (Sandbox Code Playgroud)