回答編集履歴

1

追記

2021/11/13 04:48

投稿

hoshi-takanori
hoshi-takanori

スコア7895

test CHANGED
@@ -1,6 +1,6 @@
1
1
  かっこ付きの handleEvent() だと、メソッドを呼び出して、その結果を代入することになります。
2
2
 
3
- メソッドそのものを代入するには、かっこなしで handleEvent と書くと良いしょう
3
+ メソッドそのものを代入するには、かっこなしで handleEvent と書くとできます
4
4
 
5
5
 
6
6
 
@@ -11,3 +11,19 @@
11
11
  + hogeView.tapEventHandler = handleEvent
12
12
 
13
13
  ```
14
+
15
+
16
+
17
+ (追記) ただし、handleEvent がメソッドの場合、self が強参照されるので、これを view に設定すると循環参照になってメモリーリークの原因になりますので、クロージャにして weak self するか、delegate にすべきですね。
18
+
19
+
20
+
21
+ ```swift
22
+
23
+ hogeView.tapEventHandler = { [weak self] in
24
+
25
+ self?.handleEvent()
26
+
27
+ }
28
+
29
+ ```