2013-05-04 80 views
1

我想获得“LightTable”样品从苹果公司的网站去码(https://developer.apple.com/library/mac/#samplecode/LightTable/Introduction/Intro.html)。这一切编译罚款,但图像拖动到在此错误消息正在运行的程序窗口,结果在控制台中记录:获取“LightTable”示例代码工作

** Canceling drag because exception 'CALayerInvalidGeometry' (reason 'CALayer position contains NaN: [nan nan]') was raised during a dragging session 

并没有任何反应。

我使用的Xcode 4.6.1和OSX 10.8.3的问题似乎是在“LTMaskLayer”级。特别是setFrame函数,但经过一些修补后,我仍然无法让应用程序正常工作。

似乎是个不错的应用程序,有很多东西值得学习,而不仅仅是触摸手势,我真的很想得到它的工作。非常感谢任何能够帮助的人。

回答

1

你是正确的,错误似乎是在-[LTMaskLayer setFrame:]

这个实验为我工作。更改:

if (!CGSizeEqualToSize(oldFrame.size, frame.size)) { 

if (!CGSizeEqualToSize(oldFrame.size, frame.size) && !CGSizeEqualToSize(oldFrame.size, CGSizeZero)) { 

这是完全可能有更好的修复,但是这应该让你有点远。

+0

棒极了!非常感谢您的快速回复。我知道它是与零个值做的,但我不知道如何去修复它。 – lateAtNight 2013-05-04 22:40:25