2012-04-18 62 views
0

我想从一个TableViewController传递控件,将其称为'A'到另一个TableViewController,称之为'B'。尽管我启用了“所有异常”,但我陷入了主要的第20行: retVal = UIApplicationMain(argc,argv,nil,NSStringFromClass([AppDelegate 第20行最右边的NB是“Thread 1 :断点1.3" 什么是值得在iOS 5.1应用程序;为什么我看不到例外?

任何人都可以点我的方向,这将有助于我看看是什么原因造成的程序停止

// 
// main.m 
// some function 
// 
// Created by JJW on 3/23/12. 
// Copyright (c) 2012 JJW, LLC. All rights reserved. 
// 

#import <UIKit/UIKit.h> 

#import "AppDelegate.h" 

int main(int argc, char *argv[]) 
{ 
    @autoreleasepool { 
     //return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 
     int retVal = -1; 
     @try 
     { 
      retVal = UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); 
     } 
     @catch (NSException* exception) 
     { 
      NSLog(@"Uncaught exception: %@", exception.description); 
      NSLog(@"Stack trace: %@", [exception callStackSymbols]); 
     } 
     return retVal; 
    } 
} 

回答

1

选择从项目导航断点选项卡。?。然后按下底部的'+'来添加一个断点,选择添加异常断点,确保异常断点被选中,所有异常,断点抛出。

现在,当您运行应用程序时,只要引发异常,它就会停止。这会让你看到你打破的路线。

UPDATE 你可以尝试摆脱try/catch语句。我从来没有见过像这样在应用程序中使用过的一个。

int main(int argc, char *argv[]) { 

    @autoreleasepool { 
     int retVal = UIApplicationMain(argc, argv, nil, nil); 
     return retVal; 
    } 
} 
+0

感谢比尔,但正如我的问题所述:即使我已启用'所有例外'。所以我已经完成了你的建议。然而,一些例外发生,并没有陷入困境。 – JJW 2012-04-18 15:52:31

+0

尝试并扔掉你的try/catch语句。查看我的更新。 – 2012-04-18 16:33:41

+0

我删除了Try,Catch stuff并得到了相同的结果。 – JJW 2012-04-18 20:49:00

0

我花了一整天的时间重新创建整个项目。新的白蚁有例外情况,并带有解释性信息。所以我猜这个旧的应用程序完全搞砸了。

相关问题