如何在 Swift 中使用 Xcode ... 通过 UI 元素类型进行应用程序范围内/更快的更新?

How to do app-wide / faster updates by UI element type, in Swift using Xcode ...?

只是好奇 - 在 swift 应用程序上进行一些维护,有点耗时,很想知道是否有更好的推荐方法或更快的方法 (?) 来为 UI 元素类型,例如更新所有按钮,使其具有特定的 属性,例如说一个颜色或宽度限制...?

颜色,是的,通过使用按钮的外观代理,喜欢

UIButton.appearance().backgroundColor = UIColor.whateverColor()

宽度限制,没有。不过,还有其他几种方法可以做到这一点。

  • 如果您的正则表达式技巧精通,您可以在所有故事板和 xibs 的 XML 代码中进行搜索和替换,为每个代码添加宽度限制,但那会是 error-prone 因为其中一些可能已经有宽度限制。
  • 您可以子class UIButton 并给它一个宽度约束并设置您想要的任何其他属性,但您仍然必须 search-and-replace 所有 UIButton在外观文件中使用您的自定义 class 类型。

对于一些批量更新,例如更改控件的字体或颜色,您可以使用 UIAppearance 代理。您还可以扩展 类 以添加更多选项来控制视图和控件的设计。只需添加标有 UI_APPEARANCE 的方法并根据需要实施。