删除UILable的额外填充

时间:2019-11-19 13:55:34

标签: swift xcode uilabel

我正在开发一个同时支持RTL和LTR的应用程序。 我正在为RTL语言使用Monserat字体,而我需要为LTR语言使用Cairo字体。但是我在使用Ciaro字体时遇到阿拉伯语问题,标签上有额外的填充,因此阿拉伯语的视图效果不佳。
请查看给定的屏幕截图enter image description here

1 个答案:

答案 0 :(得分:2)

您可以创建自定义类UILabel,该类将支持 RTL LTR 方向。

例如:

class MirroringLabel: UILabel {

    override func layoutSubviews() {
        super.layoutSubviews()

        if UIApplication.isRightToLeftLayoutDirection() {
            self.textAlignment = .right
        } else {
            self.textAlignment = .left
        }
    }
}

然后将标签的故事板类从UILabel更改为MirroringLabel