セットアップは簡単です。
「TripService」と「TripViewController」があります。距離など、旅行サービスで何かが変更された場合は、通知を発行する必要があります。これにより、関心のある人(この場合はView Controller)に通知する必要があります。
オブジェクトに関連付けられた通知をトリガーすると問題が発生するため、次のように記述します。
[NSNotification notificationWithName:TRIPSERVICEDISTANCECHANGE
object:self
userInfo:distanceInfo];
でそれを聞いてください
[notificationCenter addObserver:self
selector:@selector(distanceChanged:)
name:TRIPSERVICEDISTANCECHANGE
object:self.tripRecorder];
この場合、トリガーしますが、distanceChangedが起動されることはありません。
両方の'object'値をnilに置き換えると、これは機能します。
奇妙なことに、これはデバッグモードでアプリを実行し、コードをステップ実行すると正常に機能します。