enumを使用してアプリケーションにカスタムエラーコードを設定しようとしています。しかし、NSErrorイニシャライザを呼び出したときにエラーが発生します。以下は、私がこれまで持っているコードは、あるコンパイラエラーがあなたがとは対照的に、FYIError
タイプに渡そうとしているとおりNSError initializerでコードの列挙型を渡すときにエラーが発生する
enum FYIError : Int{
case emptyData = 1
case apiError = 2
}
class Test{
func customErrorTest(){
let customError:NSError = NSError(domain: "mydomain", code: FYIError.apiError, userInfo: Test.userInfo(""))
}
static private func userInfo (message:String) -> [NSObject: AnyObject]{
var msg:String = message
if (msg.characters.count<0){
msg = "Oops! Something went wrong. Please try again later."
}
var dict = [NSObject: AnyObject]()
dict[NSLocalizedDescriptionKey] = msg
dict[NSLocalizedFailureReasonErrorKey] = msg
dict[NSUnderlyingErrorKey] = msg
return dict
}
}
私は以下のようになってしまうエラー、