1

Apple の Web サイト ( 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関数ですが、いじくり回した後でもアプリを正しく動作させることができません。

タッチ ジェスチャだけでなく、多くのことを学べる優れたアプリのように思えます。実際に機能させたいと思っています。助けてくれる人に感謝します。

4

1 に答える 1

1

おっしゃるとおり、バグは にあるようです-[LTMaskLayer setFrame:]

この実験は私にとってはうまくいきました。変化する:

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

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

より良い修正がある可能性は十分にありますが、これで少し先に進むことができます。

于 2013-05-04T22:22:38.030 に答える