2010-09-30 67 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