大佬教程收集整理的这篇文章主要介绍了Swift中非文字值的枚举,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
enum FileType { case VIDEO = ["name": "Video","contentTypeMatcher": "video/"] case IMAGE = ["name": "Image","contentTypeMatcher": "image/"] case AUdio = ["name": "Audio","contentTypeMatcher": "aduio/"] case PDF = ["name": "PDF","contentTypeMatcher":"application/pdf"] case TEXT = ["name": "Text","contentTypeMatcher": "text/"] case FOLDER= ["name": "Folder","contentTypeMatcher" :"application/x-directory"] case PLAIN = ["name": "Plain","contentTypeMatcher": ""] }
当我使用元组时,它是一样的:
enum FileType { case VIDEO = (name: "Video",contentTypeMatcher: "video/") case IMAGE = (name: "Image",contentTypeMatcher: "image/") case AUdio = (name: "Audio",contentTypeMatcher: "aduio/") case PDF = (name: "PDF",contentTypeMatcher:"application/pdf") case TEXT = (name: "Text",contentTypeMatcher: "text/") case FOLDER = (name: "Folder",contentTypeMatcher :"application/x-directory") case PLAIN = (name: "Plain",contentTypeMatcher: "") }
除了文字之外别无其他可以用作原始值.
一种可能的解决方法是将字典表示为字符串 – 例如,您可以使用逗号分隔元素,使用冒号来键入值:
enum FileType : String { case VIDEO = "name:Video,contentTypeMatcher:video/" case IMAGE = "name:Image,contentTypeMatcher:image/" ... }
var dictValue: [String : String] { var dict = [String : String]() var elements = self.rawValue.componentsSeparatedByString(",") for element in elements { var parts = element.componentsSeparatedByString(":") if parts.count == 2 { dict[parts[0]] = parts[1] } } return dict }
以上是大佬教程为你收集整理的Swift中非文字值的枚举全部内容,希望文章能够帮你解决Swift中非文字值的枚举所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。