swift - 在swift中获取枚举类型的值

标签 swift

我正在尝试获取枚举的默认值,以便将其用作参数。这段代码不起作用,但我想得到类似的东西:

print("Param: \(Params.RCLoss.description)")

输出应该是:

Param: RC_LOSS_MAN

代码如下:

enum Params {
  enum RCLoss: Int32, CustomStringConvertible {
    case disable = 0
    case enable = 1

    var description: String {
        return "RC_LOSS_MAN"
    }
  } 
}

我希望能够通过这个:

set(parameterType: Params.RCLoss.description, parameterValue: Params.RCLoss.enable)

应该对应于设置的这些值:

set(parameterType: "RC_LOSS_MAN", parameterValue: 0)

最佳答案

看来你只是想要

enum rcLoss: Int32 {
  case disable = 0
  case enable = 1 

  static var description: String {
    return "RC_LOSS_MAN"
  }
}

rcLoss 是一种类型,description 必须是 static 才能调用 rcLoss.description。这意味着您不能使用 CustomStringConvertible。您将使用 CustomStringConvertible枚举值 转换为String

关于swift - 在swift中获取枚举类型的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55011982/

相关文章:

swift - SwiftUI 中的动画绑定(bind)

swift 3 : How to have a "global" button and action used in multiple controllers

swift - 如何显示 ASNetworkImageNode 的事件指示器?

swift - 用户默认值中的 Firebase ID

node.js - 通过 Socket.IO 向所有关注者发送消息

ios - UIButton 框架不会随着使用 Swift 5 的可访问性大字体而增加

ios - 完全移动到其他 View 并且不允许在 SwiftUI 中返回

ios - HLSCatalog 苹果示例应用程序

swift - 迭代PHAsset以获取图像标识符Swift

json - 在 Swift 4 中解码 JSON