使用Swift从do / try / catch中的catch错误中获取字符串消息

时间:2015-11-03 17:01:06

标签: swift try-catch

我有2个类,1个是表单视图控制器,另一个是自定义类,用于验证我的应用程序中的所有表单。

在可能错误列表的枚举中,我有以下内容:

{data[3], data[2}

并且在同一个类的validate方法中我有这些:

enum ValidateErrors: ErrorType{

case Empty(desc: String)
case WrongFormat(desc: String)

}

当我在视图控制器中执行do / try / catch时,我需要显示一条错误消息,其中包含" Empty email。"但它显示:空("空电子邮件。")

这是来自视图控制器的代码,我在其中创建了do / try / catch

guard email.characters.count > 0 else { throw ValidateErrors.Empty(desc:"Empty email.") }

2 个答案:

答案 0 :(得分:0)

我在这里找到了解决方案: https://developer.apple.com/documentation/swift/error

在Swift 4中尝试以下示例:

enum ValidateErrors: Error
{
    case Empty(desc: String)
    case WrongFormat(desc: String)
}

do
{
    try ValidateData.validateEmail(emailTextView.text!)
    print("Campo Valido")
}
catch ValidateErrors.Empty(desc: let error)
{
    print(error)
}

答案 1 :(得分:-1)

您可以尝试print(error.desc)

相关问题