nsnotificationは複数回提起されます
-
28-10-2019 - |
質問
私は電子書籍の読者を開発しており、次の問題に遭遇しました。 Ibactionメソッドを使用して、ボタンがタップされるとアクションメソッドを呼び出すInSnotificationを投稿しています。それは初めて正常に動作します... ibactionメソッドはボタンをタップするevry時間と呼ばれる必要があります。このアクションを完了したら、ホームページに移動してから戻ってボタンをもう一度クリックする必要があります。これが私が問題に直面しているところです。この方法は2回目から複数回呼び出されており、数は増加し続けています。これで私を助けてください。
//IBAction Method
if (sender.tag == PenToolAction) {
GLogInfo(@"Pen tool tapped");
[self hideSelf];
[[NSNotificationCenter defaultCenter] postNotificationName:PenToolActionInitialized object:nil];
}
解決
通知オブザーバーを複数回呼び出す方法に追加すると、通知も複数回受け取ります。
どちらかを入れてみてください [[NSNotificationCenter defaultCenter] addObserver:...]
の中に init
代わりにメソッドまたは呼び出します [[NSNotificationCenter defaultCenter] removeObserver:self]
直前。
他のヒント
サポートに感謝します。私の質問の解決策を見つけました...私のコードの主な犯人はメモリ管理の問題です...私はXコードアナライザーを使用してリークを確認し、それを見つけました。メイン変数をリリースするのを忘れていました.....私は変数をリリースしましたが、これで私のコードは正常に動作しています。
所属していません StackOverflow