Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Macos -[nsrresponder presentError:]显示哪些字段?_Macos_Cocoa_Error Handling_Nserror_Nsalert - Fatal编程技术网

Macos -[nsrresponder presentError:]显示哪些字段?

Macos -[nsrresponder presentError:]显示哪些字段?,macos,cocoa,error-handling,nserror,nsalert,Macos,Cocoa,Error Handling,Nserror,Nsalert,是否有关于该方法工作原理的文档?我试图在我的库中创建NSError实例,其userInfo值向用户显示尽可能多的有用信息。我的日子不好过 我一开始只使用了NSLocalizedFailureReasonErrorKey。看到它为生成的NSAlert(粗体字体,最上面的标签)分配了messageText属性,我接下来尝试添加NSLocalizedDescriptionKey,我认为它将填充informativeText属性,以便在其下进行非粗体解释。我还添加了nsurlerorkey,因为这个库处

是否有关于该方法工作原理的文档?我试图在我的库中创建
NSError
实例,其
userInfo
值向用户显示尽可能多的有用信息。我的日子不好过

我一开始只使用了
NSLocalizedFailureReasonErrorKey
。看到它为生成的
NSAlert
(粗体字体,最上面的标签)分配了
messageText
属性,我接下来尝试添加
NSLocalizedDescriptionKey
,我认为它将填充
informativeText
属性,以便在其下进行非粗体解释。我还添加了
nsurlerorkey
,因为这个库处理文件,它会很有帮助

生成的
NSAlert
根本不显示原始的
NSLocalizedFailureReasonErrorKey
值,新的
NSLocalizedDescriptionKey
现在成为
消息文本。它也根本不公开
nsurlerorkey


是我编写自己的错误表示方法和此库的域的特殊情况的唯一选项吗?

下的错误处理编程指南中记录了
NSError
键如何与
presentError:
交互

它包括一个图表,详细说明什么去了哪里。如文件所述:

失败原因

解释错误发生原因的简短句子。它通常是错误描述的一部分。presentError:等方法不会自动显示失败原因,因为它已包含在错误描述中。失败原因适用于只想显示失败原因的客户端

如果要在演示之前重新排列
NSError
对象中的字段,最好覆盖
willPresentError:
以返回调整后的错误对象

对于像
nsurlerorkey
这样的字段,如果您想显示它,您应该将其包含在
NSLocalizedDescriptionKey
nsLocalizedRecoverysSuggestionErrorkey
中。虽然它被称为“恢复建议”,但文档明确指出,它可以“作为补充错误描述和故障原因的纯信息性消息”