gpt4 book ai didi

ios - 如何更改所有 Storyboard中所有 UILabel 的 textAlignment

转载 作者:行者123 更新时间:2023-11-28 21:44:45 27 4
gpt4 key购买 nike

如何将所有 Storyboard中所有 UILabel 的 textAlignment 属性设置为 NSTextAlignmentNatural

我们的应用有很多 Storyboard和 xib 文件,有很多屏幕和 UILabel。为了针对 RTL 语言(希伯来语、阿拉伯语)进行本地化,textAlignment 属性需要为 NSTextAlignmentNatural 而不是左对齐。

Xcode 6.3.2 Storyboard编辑仅支持设置左对齐、居中对齐或右对齐,因此这不是一个选项。它必须在某处的代码中完成。一种解决方案是遍历viewDidLoad中的 View 层级并修复所有UILabels,但是 View Controller 很多。有什么方法可以在一个适用于所有 View Controller 的地方覆盖或补充 viewDidLoad 吗?方法调配不是我们想要使用的选项。还有其他办法吗?

我能看到的唯一解决方案(除了混合或修改所有 viewDidLoad 方法)是继承 UIViewController,将代码添加到 viewDidLoad ,然后将所有 VC 更改为它的子类。

有更好的方法吗?

最佳答案

我想到了一个解决方案,我不确定它是否可行,但我想与您分享。
您可以继承 UILabel 并创建一个符合 UIAppereance 协议(protocol)的新属性,该属性将设置文本对齐方式。
也许一个类别就足够了。
使用 Appereance 代理,您可以使自定义应用程序范围广泛,当然您需要将 UILabel 更改为新的自定义类,但如果没有以编程方式创建的标签,您可以执行“查找和替换”在 Storyboard xib 上使用简单的文本编辑器。
检查herehere查看如何使方法符合外观代理。

关于ios - 如何更改所有 Storyboard中所有 UILabel 的 textAlignment,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30623913/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com