我正在编写一个包含标签控制器的iPhone应用程序,每个标签项都有一个独立的视图控制器和一个xib文件。
当我只显示没有从笔尖到我班级的任何插座连接的视图时,它正常工作。 但是当我尝试将xib上的项连接到我的类变量时。应用程序总是崩溃。
代码如下:
@interface TabX : UIViewController {
IBOutlet UILabel *label;
}
@property (nonatomic, retain) UILabel *label;
@end
@implementation PromotionNews
@synthesize label;
...
@end
当我在IB中建立连接以将Label对象连接到我的文件owener的标签插座时发生崩溃。文件所有者设置为TabX类。
部分追踪是:
2010-09-30 10:23:59.503 MyNearByInfoApp[2613:207] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<UIViewController 0x6d28530> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key label.'
*** Call stack at first throw:
(
0 CoreFoundation 0x02664b99 __exceptionPreprocess + 185
1 libobjc.A.dylib 0x027b440e objc_exception_throw + 47
2 CoreFoundation 0x02664ad1 -[NSException raise] + 17
3 Foundation 0x000330f3 _NSSetUsingKeyValueSetter + 135
4 Foundation 0x00033061 -[NSObject(NSKeyValueCoding) setValue:forKey:] + 285
5 UIKit 0x004b170a -[UIRuntimeOutletConnection connect] + 112
6 CoreFoundation 0x025dad0f -[NSArray makeObjectsPerformSelector:] + 239
7 UIKit 0x004b0121 -[UINib instantiateWithOwner:options:] + 1041
8 UIKit 0x004b1eb5 -[NSBundle(UINSBundleAdditions) loadNibNamed:owner:options:] + 168
知道发生了什么事吗?
答案 0 :(得分:0)
我刚刚和另一个人解决了这个错误。问题是您引用的视图与您的代码不匹配。出于同样的原因。因为你有一个标签栏应用程序我假设你也有委托等等。 你要做的就是点击视图上的TAB BAR本身,然后将类标识名称命名为你在xcode中使用的类名。
因此,删除文件所有者类标识并保持正常。它应该是UIApplication我相信如果您使用默认的tabBar应用程序。
希望这会有所帮助 如果有,请告诉我。因为它帮助了另一个家伙。 虽然你是第二个有同样问题的人,但这很有趣。这是我第一次一个接一个地解决同样的问题。洛尔
PK