作者热门文章
- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我有一个 Any?
类型的变量。我完全知道那个变量是 enum:String
的类型。我如何获得 rawValue 之类的东西:
var somevar: Any? = someValue
(somevar as ?????).rawValue
最佳答案
首先很抱歉我误解了你的问题。
是的,这是可能的,而且非常简单
这是swift的美
你必须在那里添加一些额外的步骤
第一步:
添加协议(protocol)
protocol TestMe {
var rawValueDesc: String {get}
}
第 2 步:
在你的枚举中实现它
enum YourEnum:String,TestMe {
case one = "test"
case two = "test1"
var rawValueDesc: String {
return self.rawValue
}
}
最后
var testdd:Any = YourEnum.one
if let finalValue = testdd as? TestMe {
print( finalValue.rawValueDesc)
}
希望对你有帮助
关于ios - 如果元素是 Any,我如何从枚举中获取 rawValue?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53632748/
我是一名优秀的程序员,十分优秀!