0

CGPathContainsPointを使用すると、結果はCAShapeLayerの元の位置と一致しますが、現在の位置とは一致しません。これは正常ですか。テストしているCGPointに変換を適用する必要がありますか、それともコードの他の場所で問題を探す必要がありますか?私のCAShapeLayerは、.positionプロパティを1回更新するだけで移動しました。

完全を期すために、CAShapeLayerはUIButton.layerのサブレイヤーであることを追加します。

4

1 に答える 1

3

私自身の質問に答えるために、次を使用してタッチポイントの位置 (UIButton の座標空間内) を CAShapLayer の座標空間に変換する必要がありました。

CGPoint convertedTouchPoint = [myButton.layer convertPoint:touchPoint toLayer:myShapeLayer];
于 2012-08-28T02:08:38.707 に答える