2

将我的项目更新到 10.7 SDK 并切换调试器后,我收到以下消息:

Property with 'iboutlet' attribute must be an object type (invalid 'BOOL' (aka 'signed char'))

它在更新之前完美运行。关于如何解决这个问题的任何提示?

4

4 回答 4

7

您必须导入地图框架(MapKit/MapKit.h)

#import <MapKit/MapKit.h>
于 2014-08-12T13:47:44.103 回答
6

如果您为组件使用自定义类(即从 UI* 子类化),请记住您需要为您的类导入 .h 文件,因此您的属性指针不仅仅是编译器的 (id)。

于 2013-03-19T12:04:08.823 回答
1

IBOutlets 总是对象,它们是在 xibs/nibs 中引用的值,你不能用标量值真正做到这一点。如果您需要设置布尔值,那么您可以在对象的 -awakeFromNib 方法中调用 setter,或者根据您正在执行的操作:kvo 或委托可能是合适的。

于 2012-06-24T16:56:15.423 回答
1

尝试取消链接并再次链接 IBOutlet,或尝试将 分配给boolValue持有该对象的变量。

据我所知,使用新的 SDK,很多东西都被弃用了,并且无法正常工作。这就是为什么我讨厌使用测试版!

于 2012-06-24T09:12:48.203 回答