我在Xcode中配置了一个All Exceptions断点:

有时候Xcode会停在一条线上:
[managedObjectContext save:&error];
Run Code Online (Sandbox Code Playgroud)
具有以下回溯:

但如果单击"继续",程序将继续运行,就好像什么也没发生
如何忽略这些"正常"异常,但仍然让调试器在我自己的代码中停止异常?
(我知道发生这种情况是因为Core Data内部抛出并捕获异常,并且Xcode只是在抛出异常时遵循暂停程序的请求.但是,我想忽略这些,所以我可以回到调试我自己的代码!)
版主:这类似于"Xcode 4异常断点过滤",但我认为这个问题需要很长时间才能解决问题并且没有任何有用的答案.它们可以联系起来吗?
该try{}catch构造对于C++,Java和相关语言是通用的.在iOS SDK中是否有这样的功能?
我是Objective-C的新手,我看到有关于错误处理的不同约定.有一些例外,但也有一些情况,如果出现问题,函数应该返回nil.
那么,我如何决定何时使用哪个,以及如何处理异常和意外的返回值?什么是最佳做法和危险信号?
我有一些图像缩放代码的问题,在iOS5中引发异常但在6和7中工作.
我需要支持运行5的用户,所以我试图编写一个try-catch,它会在异常发生时调用一些特殊的iOS5代码.
异常(EXC_BAD_ACCESS)似乎发生在Apple代码中,我的代码中的异常处理程序不处理错误,但应用程序只是立即崩溃.
那么,任何人都可以建议一种更强大的方法来尝试捕捉异常,或者任何人都可以对更好的缩放图像方式有所了解吗?(记住这是针对iOS5的)
我的主要图像缩放功能(包含不起作用的异常捕获器):
+ (UIImage *)imageWithImage:(UIImage *)image scaledToMax:(int)maxDimension {
// Get a copy of the image where the new image has a maximum height or width as specified by maxDimension
float scaleFactor;
if (image.size.width<=maxDimension && image.size.height<=maxDimension)
{
return image;
}
if (image.size.width>image.size.height)
{
scaleFactor = maxDimension / image.size.width;
} else {
scaleFactor = maxDimension / image.size.height;
}
float newWidth = roundf(image.size.width * scaleFactor);
float newHeight = roundf(image.size.height * scaleFactor);
CGSize newSize = CGSizeMake(newWidth, newHeight);
UIGraphicsBeginImageContextWithOptions(newSize, NO, 0.0);
NSLog(@"HPSImageHelper …Run Code Online (Sandbox Code Playgroud) exception ×2
ios ×2
iphone ×2
objective-c ×2
ios4 ×1
return-value ×1
try-catch ×1
uiimage ×1
xcode ×1