首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >[NSResponder presentError:]显示哪些字段?

[NSResponder presentError:]显示哪些字段?
EN

Stack Overflow用户
提问于 2015-02-23 18:03:45
回答 1查看 212关注 0票数 2

有关于-[NSResponder presentError:]方法如何工作的文档吗?我试图在我的库中创建NSError实例,其userInfo值向用户显示尽可能多的有用信息。我现在很难过。

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

结果的NSAlert根本不显示原始的NSLocalizedFailureReasonErrorKey值,新的NSLocalizedDescriptionKey现在变成了messageText。它也完全不公开NSURLErrorKey

是我唯一的选择来写我自己的错误表示方法和特例这个库的域?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-02-23 18:12:26

NSError键与presentError:的交互方式在局部误差信息下的错误处理编程指南中有记录。

它包括一个图表,详细说明了去哪里。正如医生们所指出的:

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

如果要在表示之前重新排列NSError对象中的字段,最好是重写willPresentError:以返回已调整的错误对象。

对于像NSURLErrorKey这样的字段,如果您想要显示它,您应该已经将它包含在NSLocalizedDescriptionKeyNSLocalizedRecoverySuggestionErrorKey中。虽然它被称为“恢复建议”,但文档明确表示,它可以“作为对错误描述和失败原因进行补充的纯信息信息”使用。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/28680300

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档