2012-11-21 76 views
0

我收到了一個客戶,我需要編譯一個項目根視圖控制器,但是當我運行它,儘量讓誤差Application windows are expected to have a root view controller at the end of application launchEXC_BAD_Access (code=2, address=0x0)應用程序窗口預計將有

,因爲我知道這是因爲application:didFinishLaunchWithOptions:AppDelegate,但我的項目的問題是,沒有AppDelegate文件。

編輯:

我試圖運行的Xcode 4.5.1項目現在是給錯誤address doesn't contain a section that points to a section in a object file.

+0

b.t.w.,這是「根視圖控制器」行不是編譯器錯誤,而是**警告**。第二行(「'EXC_BAD_ACCESS'」)是代碼中其他位置的真正崩潰。 –

+0

我認爲這個錯誤「EXE_BAD_ACCESS」是由於應用程序未找到根視圖控制器的緣故。 –

+0

不一定......查看「EXC_BAD_ACCESS」崩潰的控制檯日誌,它應該顯示實際發生崩潰的位置的回溯。 –

回答

0

的問題是,沒有任何的AppDelegate文件。這通常是根視圖控制器設置的地方

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 
{ 
    self.window = [[[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]] autorelease]; 
    // Override point for customization after application launch. 
    self.viewController = [[[ViewController alloc] initWithNibName:@"ViewController" bundle:nil] autorelease]; 

    // set root view controller 
    self.window.rootViewController = self.viewController; 
    [self.window makeKeyAndVisible]; 
    return YES; 
} 
+0

我在我的項目中搜索了'application didFinishLaunchingWithOptions:'方法,但找不到它。我想做什麼? –

+0

在您的項目的AppDelegate.h中檢查此方法 – Vishal

0

我也遇到了「應用程序窗口應該有一個根視圖控制器」錯誤消息。

如果您使用的是故事板並已覈實:

  1. 應用程序委託的application:didFinishLaunchingWithOptions方法是 返回TRUE和別的什麼都不做。
  2. 視圖控制器在IB中設置爲初始視圖控制器。
  3. 故事板在目標摘要選項卡上進行了適當設置。

確認您沒有在視圖控制器實現中創建「視圖」UIView @property和@synthezised它。我體驗了這一點,並通過一個漫長的過程消除了我的DOH時刻,當時我意識到我創建了一個名爲「view」的UIView屬性,其名稱完全像IB創建並鏈接到視圖控制器。

希望這會有所幫助。

相關問題