回答編集履歴

1

`.allowUserInteraction`を期待通り機能させるために必要な補足情報を追記

2021/09/30 20:29

投稿

退会済みユーザー
test CHANGED
@@ -60,6 +60,10 @@
60
60
 
61
61
 
62
62
 
63
+ また、もしアニメーション中のビューそのものにタッチしてアニメーションを止めるような設計の場合、`alpha` 値が `0` に近いと `.allowUserInteraction` を指定していても反応しませんので、`self.alpha` の値を `0.02` などにしたほうが良いです(しきい値はよく分かりません。`0.01` だと反応しなかったりします)。
64
+
65
+
66
+
63
67
  ```swift
64
68
 
65
69
  extension UIView {
@@ -76,7 +80,7 @@
76
80
 
77
81
  options: [.allowUserInteraction, .curveEaseInOut, .autoreverse, .repeat],
78
82
 
79
- animations: { self.alpha = 0 }, completion: { _ in self.alpha = sourceAlpha })
83
+ animations: { self.alpha = 0.02 }, completion: { _ in self.alpha = sourceAlpha })
80
84
 
81
85
  }
82
86