2011-10-28 56 views
2

每當我點擊某個按鈕,應用程序總是死了,我發送到:運行錯誤發送我的代碼,我沒有寫

int main(int argc, char *argv[]) 
{ 
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init]; 
    THIS LINE ==> int retVal = UIApplicationMain(argc, argv, nil, nil); 
    [pool release]; 
    return retVal; 
} 

對於那些誰是熟悉的,你知道,我沒寫這個代碼。我不知道如何找出我的錯誤在哪裏!

此外,輸出顯示如下:

2011-10-27 21:03:17.690 My Program[55441:207] Unbalanced calls to begin/end appearance transitions for <UITabBarController: 0x68181f0>. 
(lldb) 

我不知道去哪裏找短按行註釋掉的代碼行,直到我發現這個問題。有什麼建議麼?

+3

這不是一個壞的策略。雖然更好的方法是註釋*半*你的代碼,以便你可以在'log(N)'時間中找到錯誤。 – ObscureRobot

+1

稱讚你的應用程序的主要入口點(你指出的那一行)不會讓你走得更遠。嘗試在按鈕方法開始時設置斷點,然後逐步執行,直至崩潰。 –

+0

@Kenny我正在計劃評論與我按下並從那裏開始的按鈕相關的代碼,而不是'main'代碼(我現在意識到我沒有明確表示)。 – Jacksonkr

回答

0
按鈕 點擊UIView

被推入Window。該視圖的.xib有鏈接這是錯誤的(鏈接到IBOutlet,因爲它已被重命名,因此不再存在於代碼中)。

我建立了正確的聯動Interface Builder,我不再有錯誤。我希望 xcode至少會告訴你有一個.xib文件有問題。

PART 2

不久即修復後,我再次收到此錯誤在網上搜索了一會兒後,我發現它可能涉及到一個內存泄露所以我跑了Project->Analyze工具。當我修復Xcode的建議時,一切運行良好。

1

您可能正在運行Xcode 4.2大多數時間不顯示堆棧跟蹤的事實。檢查這個SO帖子。

Xcode 4.2 debug doesn't symbolicate stack call

+0

我修復了原來的問題,然後再次得到了這個「錯誤」。我嘗試了你發送的解決方案,但我仍然被髮送到'main' - 我會繼續研究它。 +1爲您的資源。 – Jacksonkr

相關問題