Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
私はios開発が初めてです。私は、彼らが 2 人の代表者を財団に残していることを知りました。私の理解では、デリゲートは常に疎結合でなければならないということです。では、なぜこれら 2 つが明確に保持されるのでしょうか。
ありがとう
通常、デリゲートはオブジェクトの存続期間全体にわたって必要です。そのため、通常、デリゲートは弱い/保持されない参照です。そうしないと、オブジェクトもデリゲートも、もう一方が消えるのを待つため、割り当てを解除できません。
ただしNSURLConnection、CAAnimationデリゲートは、実際には、ある種の「終了」状態を持つ特定のタスクにのみ必要です。接続がロードを終了するか、キャンセルされるか、アニメーションが終了すると、デリゲートを解放するだけで、保持サイクルを中断できます。
NSURLConnection
CAAnimation