在我的应用程序中,可以将一个视图中的图形拖到第二个视图中,以便新图形替换第二个视图(例如具有拖放功能的复制/粘贴效果)。如果委托协议被取出,则应用程序可以工作,以便第二个视图处理函数本身的更改。添加协议后,应用程序在主文件中崩溃
return UIApplicationMain(argc, argv, nil, NSStringFromClass([Load_CreatorAppDelegate class]));.
除了标准(lldb)之外,没有任何错误输出。即使我取消对委托的调用(保留在代码中),应用程序也会崩溃。不过,我知道它必须与协议代码相关,因为在此之前它运行良好。
这是第二个视图(BeamView)的部分代码:
[self drawSupportsAtLeftPoint:self.beamBottomLeft rightPoint:self.beamBottomRight inContext:context :leftPin :rightPin];
BOOL pt = NO;
if (self.tempLoad) {
//self.loadGraph = [self.dataSource changeToTempLoad:self]; NOTE #1
//if (self.tempPtLoad.x != 0 || self.tempPtLoad.y != 0) pt = YES;
pt = [self changeLoad];
[self drawLoadWithFunction:self.loadGraph inContext:context fromPoint:self.beamTopLeft toPoint:self.beamTopRight withAlpha:0.3 isPointLoad:pt inBlack:YES];
}
else {
self.loadGraph = ^(int x) {return x/15;};
[self drawLoadWithFunction:self.loadGraph inContext:context fromPoint:self.beamTopLeft toPoint:self.beamTopRight withAlpha:1 isPointLoad:pt inBlack:NO];
}
self.tempLoad = NO;
注意#1:这些被注释掉的行是调用委托的行。这两种方法及其实现是我所做的唯一更改。
我完全困惑,任何帮助将不胜感激。应用程序在主文件中崩溃的可能原因是什么?