我正在尝试创建仅显示UIAlertView
错误的NSError.description
。
例如:
var alert = UIAlertView(title: "Oops!", message: error.description, delegate: self, cancelButtonTitle: "OK")
alert.show()
说出error.description
输出:
2015-02-01 02:26:43.227 UserLogin[249:13655] [Error]: missing username (Code: 200, Version: 1.6.2)
如何在[Error]: missing username
中获取String
?我是应用程序开发的新手,我只是希望我的错误消息对用户有意义并且简单。
如果这没有意义,我正在使用Parse,我正在处理注册表。如果出现错误,例如“缺少用户名”,“用户名”等等,我只是想找到一种方法来获取一个简单的错误弹出窗口来说明 “用户名”。
答案 0 :(得分:4)
您可以使用NSError
的{{3}}属性。
而不是error.description
使用error.localizedDescription
var alert = UIAlertView(title: "Oops!", message: error.localizedDescription, delegate: self, cancelButtonTitle: "OK")
alert.show()
注意:强>
在iOS 8中不推荐使用答案 1 :(得分:3)
尝试使用:
if let dic = error?.userInfo {
let errorString = dic[NSUnderlyingErrorKey]?.localizedDescription
var alert = UIAlertView(title: "Oops!", message:errorString, delegate: self, cancelButtonTitle: "OK")
alert.show()
}
答案 2 :(得分:1)
在你朝这个方向前进之前,你应该非常非常努力地思考你收到的NSError是否会被用户看到。许多NSErrors只能由程序员检查。在这种情况下,"缺少用户名"似乎强烈表明你,程序员,通过发送没有用户名的请求而犯了一个错误,并且不应该首先做到这一点。因此,显示错误警报可能是完全错误的解决方案。