2010-09-30 72 views
1

我正在写一个iPhone应用程序,它包含一个选项卡控制器,每个选项卡项目都有一个分离的视图控制器和一个xib文件。UITabBarController,UIViewController和IB崩溃问题

当我只显示视图而没有从笔尖到我的班级的任何插座连接时,它正常工作。 但是,当我尝试将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

我刚刚解决了这个错误与另一个人现在就是。问题是你引用的视图不符合你的代码。并再次出于同样的原因。因为你有一个标签栏应用程序即时通讯假设你也有委托,等等。 你所做的是在视图上单击TAB BAR本身,然后将类身份名称命名为您在xcode中使用的类名称。

因此删除文件所有者类标识并将其保留为正常状态。它应该是我相信如果您使用默认tabBar应用程序的UIApplication。

希望这可以帮助 让我知道它是否。因为它帮助了另一个家伙。 虽然你是如何遇到同样问题的第二人,但这很有趣。这是我第一次依次解决同样的问题。大声笑

PK

+0

行,它的工作。非常感谢! – 2010-09-30 03:03:42

+0

问题是我们需要将标签栏下的视图控制器更改为我们想要使用的视图控制器。但是在Tab Bar Controller Attribue页面中,我们仍然有同样的选择,但是我们可以选择的只有很少的可用类类型,这仍然没有让人困惑。 – 2010-09-30 03:06:39

+0

很高兴我能帮到你。啊,好吧,我明白了,谢谢你让我们知道。至少有人可以看看这个,并找出他们如何解决它,如果其中一个选项不工作,这是另一个人可以尝试:D。 – Pavan 2010-09-30 03:09:08