我正在制作一个绘图应用程序,我想通过使用枚举来参考我的 colored颜色 .例如,如果使用Colors.RedColor,而不是每次我想要红色时都输入值,那么会更干净、更方便.然而,不要接受UISWIFT的原色.有没有一种方法可以用枚举或类似的东西来实现这一点?

推荐答案

我是这样做的(基本上使用 struct 作为名称空间):

extension UIColor {
  struct MyTheme {
    static var firstColor: UIColor  { return UIColor(red: 1, green: 0, blue: 0, alpha: 1) }
    static var secondColor: UIColor { return UIColor(red: 0, green: 1, blue: 0, alpha: 1) }
  }
}

你可以这样使用它:

UIColor.MyTheme.firstColor

因此,您可以在自定义主题中使用红色.

Swift相关问答推荐

{Singleton类}类型的值没有成员$showegView'

在解码字符串时需要帮助.

音频播放器无法播放URL音频(操作系统状态错误2003334207.)

SWIFT异步/等待,多个监听程序

MacOS 13-如何使用SwiftUI创建Message.App设置工具栏?

如何根据 DatePicker 中选定的日期实现 TabView 页面切换?

如何从UIKit中的AttributeContainer获取属性并将其分配给某个变量

为什么自定义串行队列的目标是全局队列时,Swift中不会并发执行?

如何将视图添加到多行文本视图的末尾?

标有@MainActor 的函数中的异步调用是否也在主线程上运行?

我怎样才能缩短(提高效率)这段代码?

为什么 NumberFormatter 在 Swift 中将 19,999,999,999,999,999 格式化为 20,000,000,000,000,000?

Swiftui 按钮依次显示一组图像

用户输入以更改通过点击生成的形状大小

如何仅将 SwiftUI 不透明度应用于父视图?

如何在 iOS Swift 中进行多线程、并发或并行?

如何实现 Swift 的 Comparable 协议?

如何从 Swift 中的字符串生成条形码?

两个 Date 对象之间的所有日期 (Swift)

使用 ARAnchor 插入 node 和直接插入 node 有什么区别?