我想从苹果的to网站(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什么都不会发生。
我使用的是Xcode4.6.1和OSX10.8.3,问题似乎出在"LTMaskLayer“类中。特别是setFrame函数,但经过一些修补之后,我仍然不能让应用程序正常工作。
看起来是一个很好的应用,有很多东西可以学习,而不仅仅是触摸手势,我真的很想让它工作起来。非常感谢任何能提供帮助的人。
发布于 2013-05-05 06:22:38
你是对的,这个bug似乎是在-[LTMaskLayer setFrame:]中。
这个实验对我很有效。更改:
if (!CGSizeEqualToSize(oldFrame.size, frame.size)) {至
if (!CGSizeEqualToSize(oldFrame.size, frame.size) && !CGSizeEqualToSize(oldFrame.size, CGSizeZero)) {完全有可能有更好的解决方案,但这应该会让你走得更远。
https://stackoverflow.com/questions/16379440
复制相似问题