首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >点击NSSetUncaughtExceptionHandler时使用CoreGraphics在屏幕上绘制

点击NSSetUncaughtExceptionHandler时使用CoreGraphics在屏幕上绘制
EN

Stack Overflow用户
提问于 2014-08-05 03:03:34
回答 3查看 182关注 0票数 2

NSSetUncaughtExceptionHandler被调用时,我试图在屏幕上绘制一些简单的东西,但什么也没有发生。有没有其他方法可以捕获异常并在屏幕上快速绘制一些内容?

代码语言:javascript
运行
复制
NSSetUncaughtExceptionHandler(&exceptionHandler);

void exceptionHandler(NSException *exception)
{
    UIBezierPath *path = [UIBezierPath bezierPath];
    [path moveToPoint:CGPointMake(10.0, 10.0)];
    [path moveToPoint:CGPointMake(10.0, 10.0)];
    [path addLineToPoint:CGPointMake(10.0, 450.0)];
    [path addLineToPoint:CGPointMake(310.0, 450.0)];
    [path addLineToPoint:CGPointMake(310.0, 10.0)];
    [path addLineToPoint:CGPointMake(10.0, 10.0)];

    CAShapeLayer *shapeLayer = [CAShapeLayer layer];
    shapeLayer.path = [path CGPath];
    shapeLayer.strokeColor = [[UIColor blueColor] CGColor];
    shapeLayer.lineWidth = 3.0;
    shapeLayer.fillColor = [[UIColor clearColor] CGColor];

    [APP_DELEGATE_WINDOW.rootViewController.view.layer addSublayer:shapeLayer];
    [APP_DELEGATE_WINDOW makeKeyAndVisible];
}
EN

回答 3

Stack Overflow用户

发布于 2014-08-07 15:29:11

我不确定NSSetUncaughtExceptionHandler是不是一个在屏幕上画东西的好地方。

设置顶级错误处理函数,您可以在该函数中在程序终止之前执行最后一分钟的日志记录。

大多数车祸记者都会小心地记录痕迹,尽量不“碰”其他任何东西。

如果你真的想画点什么(什么?)您可能应该先捕获一个特定的异常。只是不是任何未捕获的异常。

票数 1
EN

Stack Overflow用户

发布于 2014-08-11 15:50:16

关于NSSetUncaughtExceptionHandler,我认为Rivera是对的。也许你需要这样写:[path fill];

附言:很抱歉,我写在这里,评论被禁用,小名声…

票数 1
EN

Stack Overflow用户

发布于 2014-08-14 02:47:54

就像Rivera所说的,在这个阶段你不能拯救应用程序,但如果你真的需要在这里绘制一些东西,你可能会启动另一个进程(你必须设计它)来显示这个图像。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/25125728

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档