回答編集履歴

1

1

2020/01/24 00:53

投稿

takabosoft
takabosoft

スコア8356

test CHANGED
@@ -36,6 +36,30 @@
36
36
 
37
37
  の関数の実装を見直し、
38
38
 
39
- view.layer.sublayerの中からMyShapeLayerのものだけを抽出し(インスタンス①とします)、
39
+ view.layer.sublayersの中からMyShapeLayerのものだけを抽出し(インスタンス①とします)、
40
40
 
41
41
  その①のインスタンスに対してhitTest関数を呼び出し、ヒットしていることが判れば、①のインスタンスを選択レイヤーとして保持すれば期待通りの結果になるのではないかと思います。
42
+
43
+
44
+
45
+ 以下疑似コードです。コンパイル通るかためしていませんが雰囲気だけでも伝われば。
46
+
47
+
48
+
49
+ ```swift
50
+
51
+ for layer in view.layer.sublayers {
52
+
53
+ if let myLayer = layer as? MyShapeLayer {
54
+
55
+ if myLayer.hiiTest(...) != nil {
56
+
57
+ return myLayer
58
+
59
+ }
60
+
61
+ }
62
+
63
+ }
64
+
65
+ ```