2012-03-08 82 views
4

完整的錯誤是:終止應用程序由於未捕獲的異常'NSUnknownKeyException',原因:'[setValue:forUndefinedKey :]:這個類不是密鑰的密鑰編碼兼容密鑰。錯誤:終止由於未捕獲的異常'NSUnknownKeyException',原因:'[<UIApplication 0x6887a30> setValue:forUndefinedKey:]

所以我一直在嘗試其他人一直在說類似的問題。我試圖擺脫項目中每提及landscapeView,包括在ViewController_iPhone.xib中的FIle的所有者中的連接,然後通過在超級類ViewController中創建網點來開始新鮮事(因爲我想使用landscapeView和portraitView for iPad也)然後我在ViewController_iPhone.xib和ViewController_iPad.xib中建立連接到每個分別名爲Landscape的UIView,我仍然得到這個錯誤。

我剛開始在應用開發,所以我想做一個模板的應用程序,是在支持iPhone和iPad的所有方向的。感謝您的幫助

編輯:這是我所有的應用程序委託H和M和main.m文件的鏈接:I am getting the Applications are expected to have a root view controller at the end of application launch error

編輯2:所以我還試圖讓landscapeView視圖控制器的屬性,我做了一個ViewController.m中的setter方法,但它仍然有同樣的問題。

+0

如果沒有至少一個堆棧跟蹤或真的什麼實質性那是專門關於你的程序,這將是非常困難的,任何人作出建設性的反應。另外,landscapeView在哪裏進入? – zmccord 2012-03-08 03:22:36

+0

您正在獲取的錯誤意味着您嘗試使用不存在的鍵設置值。在你的代碼中你用鍵來設置一個值? – Pochi 2012-03-08 03:23:39

+0

Ok so @zmccord在哪裏可以找到堆棧跟蹤?還有什麼我可以鏈接? – 2012-03-08 04:29:00

回答

9

我已經找到了最常見的地方這個錯誤發生的情況是,當你從一個類,是不是廈門國際銀行的所有者中實例從廈門國際銀行視圖。

我的意思是,你可能會調用與此類似:

[[NSBundle mainBundle] loadNibNamed:@"MyView" owner:self options:nil]; 

你改變owner,所以你必須要確保所self指類有所有IBOutlet中「MyView」所需的屬性。通常這是在Interface Builder中完成的,但在這種情況下,您將以編程方式設置您的所有者,這意味着您無法在IB中建立連接。當IBOutlets不在時,應用程序會嘗試進行這些連接並失敗,從而導致出現錯誤。

我的建議(不知道任何更多的信息比你目前給出)是檢查,看看你做了這個調用,而不必適當IBOutlets。

+0

阿龍是有辦法,我可以給你我的項目,但我已經遠離了對所有設備的基本單一視圖項目沒有做非常多。我剛纔提出的ViewController的2子類,然後取得了IB的屬性,以便自動生成的代碼都xibs然後做再UIView的對象,我做了2個xibs FLE用戶類的正確子,和我去了的信息選項卡中進行狀態欄不會初始顯示,並選擇主筆尖文件和主筆尖文件(ipad)作爲兩個xib文件。 – 2012-03-08 22:29:13

+0

在我appdelegate.m我改變[視圖控制器頁頭]到[ViewController_iPhone頁頭]和[ViewController_iPad頁頭]改變了applicationDidFinishLaunchingWithOptions,我寫了進口兩個子類。 – 2012-03-08 22:30:17

+0

感謝iPhone開發者論壇得到了我的問題,是某些功能覆蓋和模板導致錯誤 – 2012-03-09 05:53:05

0

我發現什麼是我在viewcontroller.h刪除了的WebView,但沒有刪除廈門國際銀行文件指向該網頁視圖!

9

,我不得不刪除筆尖或XIB(或不管他們是本次迭代)主界面。

這肯定將是很好,如果蘋果發動它的不明真相的公衆前全部測試破軟件。他們本可以用任何方式處理這個問題;但他們卻選擇了運行時崩潰並隱藏[無意義]錯誤消息。

enter image description here

+0

這解決了我的問題。謝謝!同意錯誤信息是沒用的。 – 2014-04-01 03:49:24

+1

這導致我黑屏。如果你沒有故事板,你應該如何展示你的應用? – Jacksonkr 2015-01-29 17:51:45

1

兩個主要的原因是跟隨

  1. 您IBOutlet中可能會破壞請情節串連圖板或IB檢查。
  2. 如果您未選擇自定義課程模塊,請參閱您的故事板。
相關問題