2015-09-07 33 views
0

我有一個UIViewController的子類,當它從另一個類調用時,該應用只是凍結 - 我使用了Xcode調試器,並認爲當我試圖訪問該類的視圖時財產的應用程序凍結。另一個奇怪的是,當我輸入調試器控制面板:「po objectOfTheProblematicClass.view」調試器停止響應。 我使用的代碼是類似於:UIViewController的子類無法調用loadView方法

UIStoryboard *sb = [UIStoryboard storyboardWithName:@"Main" bundle:[NSBundle mainBundle]]; 
WTStickyViewController *stickyVC = [sb instantiateViewControllerWithIdentifier:@"WTStickyViewController"]; 
stickyVC.sticky = sticky; 
// Setup view controller containment: 
[self.parentViewController addChildViewController:stickyVC]; 

self.containerView = self.parentViewController.view; 
[self.containerView addSubview:stickyVC.view]; 

WTStickyViewController是UIViewController中的子類。應用程序在達到時會凍結

 [self.containerView addSubview:stickyVC.view]; 

但這是因爲這是第一次調用stickyVC.view。
例如,如果我想在代碼

UIView *viewForExample = stickyVC.view; 

應用程序將凍結那裏放的地方。與iOS 8的設備上進行編譯時
完全相同的應用程序工作正常,但有這個問題與iOS 9 如果有人知道爲什麼會這樣,如果有一個解決方案,將是巨大的。謝謝。

+0

你叫超在子類viewLoad方法 –

+0

檢查您的斷點。如果斷點條件或命令中存在錯誤,Xcode可能會在嘗試中斷時掛起。 – 2015-09-07 07:03:38

+0

使用導致問題的相關代碼更新您的問題。 – rmaddy

回答

0

的bug報告發送到Apple,希望這會盡快修復 - 問題是確實和Xcode 7 如果您遇到類似的問題,它可以通過執行下列操作之一來解決: 1)使用Xcode 6.4,至少在蘋果修復這個錯誤之前。

2)重建故事板中有問題的視圖。

我將張貼雷達的鏈接,一旦我有機會與我的IT經理說......

1

我有類似的問題,這是非常令人發狂。在調試過程中,CPU在資源監視器中達到100%左右,因爲應用程序死鎖。打印到控制檯或只是通常訪問視圖控制器的視圖屬性導致了這種行爲。最終,爲我「固定」的是從基本本地化文件中刪除它。我知道這是沒有道理的,但我會盡我所能詳盡闡述。

我在維護一個傳統的通用應用程序,它具有2個名爲Main_iPhone和Main_iPad的「主」故事板,您可能會猜到它是根據您啓動的設備動態加載的。我注意到,只有iPhone的nib視圖被描述爲死鎖,並且iPad加載正常。我唯一能說的是iPhone故事板在iPad故事板沒有啓用本地化的情況下啓用。因此,這裏是我把鬆散從基地本地化刪除步驟(您可能希望這樣做在一個單獨的分支/沙箱,以確保在刪除項目引用在此之前的作品):

  1. 右鍵單擊問題的看法和/或有問題的故事板,在查找器中顯示。對我來說,它是在預期的Base.lproj文件夾內。
  2. [重新]將文件移動到不同的目錄,以便Xcode找不到項目鏈接(文件在文件瀏覽器中變爲紅色)。按刪除從項目本身的項目文件引用中刪除該文件。
  3. 將文件重新添加到資源庫/項目結構中的新位置,以便Xcode將其作爲新文件選取。確保對文件的所有引用都更新到新位置。
  4. 驗證您的故事板/ xib文件不再本地化,清理項目,重新運行並查看問題是否仍然存在(請參閱圖像)。 Non-localized setting

您也可以性質右側查看文件中使用更新位置按鈕只需更新文件位置(見其他圖像)。 enter image description here

不知道這是否能解決它,但我想我會分享什麼幫助我的機會,它也有助於其他人。

+0

看起來像你有完全相同的問題。由於我寫了一個問題,我向一位比我自己更有經驗的開發人員諮詢過,我們發現問題與新的Xcode 7有關。在Xcode 6上編譯時,它工作正常。我們可能會向蘋果公司報告,希望他們能解決這個問題。 –

+0

它看起來很奇怪,我試圖在一個測試項目中重新創建它,但沒有成功。如果您提交錯誤報告,如果您發佈了開放式雷達鏈接,我會很感激。 –