【问题标题】:How to get a compiler warning when an IBOutlet is disconnectedIBOutlet 断开连接时如何获得编译器警告
【发布时间】:2011-01-27 18:38:53
【问题描述】:

如果我的一个对象的 IBOutlet 未连接到 NIB 中的任何内容,我如何让 Xcode 警告我?

我可以通过在awakeFromNibviewDidLoad 中添加assert(ofEveryOutlet); 来检查插座是否在运行时连接。但它不如让编译器为我做检查那样有用或可靠。

【问题讨论】:

  • 在 Xcode 4.2 中,现在在 IBOutlet 旁边的边距中有一个点,指示它是否已连接。

标签: xcode interface-builder compiler-warnings xib iboutlet


【解决方案1】:

为什么不创建一个单元测试目标来检查您的 IB 绑定并让您的应用程序依赖它。这样,每次构建时都会对其进行检查。有关此方法的示例,请参阅 http://blog.carbonfive.com/2010/03/testing/testing-view-controllers

【讨论】:

  • 这具有在编译时提前失败的好特性。不幸的是,它(通常)比 assert() 工作更多,我仍然必须记住在添加 IBOutlet 时更新单元测试。所以在我看来这是一个洗涤
【解决方案2】:

(编译的)NIB 文件是在运行时加载和连接的,所以我认为编译器没有办法检查这一点。我认为你最好的选择是你已经建议的断言......

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-07-29
    • 2014-11-21
    • 1970-01-01
    • 1970-01-01
    • 2015-10-13
    • 2011-05-09
    相关资源
    最近更新 更多