私は保持サイクルを理解するために多くの研究をしようとしました。しかし、私の例では何も見つからないようです。プロパティをクロージャーに設定すると、保持サイクルが発生し、弱いまたは所有されていないものを使用する必要があることを私は知っています。しかし、それらが正しく行われているかどうかを知りたい 2 つの例があります。
シンプルなアニメーション
UIView.transitionWithView(self, duration: 5, options: .TransitionCrossDissolve, animations: { [weak self] in
self?.setNeedsDisplay()
return
}, completion: nil)
配列を使ったアニメーション
for imageView in self.townImages {
UIView.transitionWithView(imageView, duration: 0.3, options: .TransitionCrossDissolve, animations: { () -> Void in
imageView.image = UIImage(named: self.getImages()[count++])
}, completion: nil)
}
これらの例の両方で、self
は のサブクラスですUIView
。私はそれを正しく行っているか、または imageView を弱参照として使用する必要があるかどうかを知りたいだけです。ありがとう。