2011-11-26 34 views
0

我一直试图从核心图显示几个CPTPieChart对象。前三或四跑没有问题,但增加更多导致严重的崩溃。无法在Core绘图中运行多个饼图

所述的碰撞是在方法中

-(void)drawInContext:(CGContextRef)theContext. 

它试图调用[超级drawInContext:theContext];并在那里崩溃。它在设备和模拟器的相同位置崩溃。

我认为这是因为它发布了一些太早,但我似乎无法找到什么。

有什么建议吗?

这里是崩溃日志:

Thread 5 Crashed: 
0 libobjc.A.dylib     0x3006bc98 objc_msgSend + 16 
1 FinGame       0x00abc1ce -[CPTPieChart renderAsVectorInContext:] (CPTPieChart.m:399) 
2 FinGame       0x00a9d08c -[CPTLayer drawInContext:] (CPTLayer.m:266) 
3 FinGame       0x00a7fb04 -[CPTPlot drawInContext:] (CPTPlot.m:326) 
4 QuartzCore      0x352a6d24 backing_callback(CGContext*, void*) + 32 
5 QuartzCore      0x352a6776 CABackingStoreUpdate + 1226 
6 QuartzCore      0x352a6178 -[CALayer _display] + 724 
7 QuartzCore      0x352a5e86 -[CALayer display] + 134 
8 QuartzCore      0x3529a706 CALayerDisplayIfNeeded + 178 
9 QuartzCore      0x3529a1c6 CA::Context::commit_transaction(CA::Transaction*) + 214 
10 QuartzCore      0x35299fd0 CA::Transaction::commit() + 184 
11 QuartzCore      0x352ec1ee CA::Transaction::release_thread(void*) + 34 
12 libsystem_c.dylib    0x32919b7c _pthread_tsd_cleanup + 156 
13 libsystem_c.dylib    0x328edf78 _pthread_exit + 112 
14 libsystem_c.dylib    0x328ef462 pthread_exit + 22 
15 Foundation      0x3431f06e +[NSThread exit] + 10 
16 Foundation      0x3439d5de __NSThread__main__ + 990 
17 libsystem_c.dylib    0x328ee30a _pthread_start + 242 
18 libsystem_c.dylib    0x328efbb4 thread_start + 0 
+0

在一个图表或多个托管视图中是否有多个饼图,每个饼图都有一个图形和一个饼图? –

+0

@EricSkroch:有多个托管视图:将每个图(CPTPieChart)添加到CPTXYGraph中,然后将其添加到其自己的CPTGraphHostingView中。 –

+1

它在哪里崩溃?你可以发布堆栈跟踪吗? –

回答

0

这是一个的缺失“保留”的情况。只要我添加了这个(以及必要的版本),它就是金色的。