問題タブ [nsnotificationcenter]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
18734 参照

ios - UIKeyboardWillShowNotification と UIKeyboardDidShowNotification が間違ったキーボードの高さを報告する

次のコード (長々と申し訳ありません) は、iOS 4.3 (おそらく他のバージョンも) で奇妙な動作を示します。この例では、3UITextFieldつの異なるサイズのキーボードを持つ 3 つの があります。1 つのテキスト フィールドの編集を開始し、[戻る] をタッチしてキーボードを閉じると、キーボード サイズが正しく返されUIKeyboardWillShowNotification、.UIKeyboardDidShowNotificationUIKeyboardFrameBeginUserInfoKey

下記参照:

- (void) keyboardWillShowNotification:(NSNotification *)aNotification

- (void) keyboardDidShowNotification:(NSNotification *)aNotification

これは予期された動作であることに注意してください。

予期しない動作は、テキスト フィールドの編集を開始すると、最初のキーボードのサイズが報告される (予想される) ことです。2 番目のテキスト フィールドを (return に触れずに) タッチすると、2 番目のサイズではなく、最初のキーボードのサイズが (予期せず) レポートされます。3 番目のテキスト フィールドを (リターンに触れずに) タッチすると、3 番目のサイズではなく、2 番目のキーボード サイズが (予期せず) 報告されます。2回目からn回目までは、表示されるものではなく、以前のキーボードのサイズを報告しているようです。

バグ レポートを送信する前に、何も見落としていないことを確認したいだけです。

参考までに、キーボードによって隠されているテキストフィールドが表示されるようにビューをシフトするときに、正しいことをしようとしているときに(UIKeyboardWillShowNotificationまたはUIKeyboardDidShowNotificationUIKeyboardFrameBeginUserInfoKeyを使用してキーボードのサイズを取得するときに)、これを見つけました。参照:

キーボードが存在するときにUITextFieldを上に移動させる方法は?

iOS ライブラリ: iOS 用テキスト、Web、および編集プログラミング ガイド --> キーボードの管理

iOS ライブラリ: iOS 用スクロール ビュー プログラミング ガイド --> スクロール ビューの作成と構成

BugVC.h

BugVC.m

0 投票する
2 に答える
1960 参照

iphone - UIDeviceOrientationDidChangeNotification が加速度計のわずかな変化で複数回呼び出される

私は使っている

appdelegate のいくつかのビューを変更します。

しかし、これは加速度計のわずかなバリエーションで呼び出されます。デバイスが完全に回転したときにのみ呼び出されるように、誰でも回避策を提案できますか。ありがとう

0 投票する
1 に答える
778 参照

ios - アプリが閉じている間のNSUserDefaultsDidChangeNotification

私が取り組んでいるアプリは、Webサービスと同期するためのユーザーの情報を設定バンドルに保存します。NSUserDefaultsDidChangeNotification通知を使用して変更を正常に検出できましたが、アプリがバックグラウンドにある場合のみでした。アプリを完全に閉じて再度起動した場合、その通知は届きません。システムがバックグラウンドでアプリの通知を合体することは知っていますが、アプリが最初に起動したときに受信する方法はありますか?そうでない場合、良い回避策はありますか?ありがとう

0 投票する
1 に答える
2365 参照

iphone - UIApplicationDidEnterBackgroundNotification が複数回呼び出される

私は使用しています:

ユーザーがアプリを別のものに切り替えるたびにダウンロードを停止します。しかし、通知が何度も呼び出され、悪い動作につながります (同じダウンロードを複数回キャンセルする...)

これは正常ですか?誰かがホームボタンをクリックすると、通知は一度だけ送信されると思います。しかし、今はそうではありません。時には 6 UIApplicationDidEnterBackgroundNotification が返されます! (時には2回、時には4回、1回、数回...)

0 投票する
4 に答える
4431 参照

ios - EAAccessoryDidConnectNotification が 2 回発生するのはなぜですか?

外部アクセサリから iPad へのメッセージの送受信を管理するクラスがあります。初期化には、次のコードがあります。

私が持っているdeallocで

何らかの理由で、外部アクセサリを iPad に接続すると、accessoryDidConnect: が起動し、続いてaccessoryDidDisconnect: が続き、accessoryDidConnect: が続きます。

余分な接続と切断を取得する理由がわかりません。何か案は?

0 投票する
1 に答える
237 参照

iphone - NSNotificationCenter と UITabBar アプリ

これが私の問題です:

アプリがあります。これは、4 つの UITabBar ビューに基づいています。ビュー 3 で何かが発生し、通知が NSNotificationCenter に送信されています。ビュー1にはオブザーバーがあり、通知が最初にローカルファイルからいくつかのデータをロードし(通知を投稿する前にファイルに保存されました)、次にUITableViewを更新するのを待ちます-> [TableView reloaddata]。だから...私はオブザーバーと通知にnslogを追加し、それらは起動しましたが、ビュー1に切り替えてもUITableViewは更新されません(アプリを再起動すると、すべて問題ありません)。

何が問題になる可能性がありますか?

ところで。ビュー 1 の更新は、ビュー 3 が現在存在している間に発生するはずです。

どんな助けでも大歓迎です!

0 投票する
1 に答える
1939 参照

ios4 - 引数付きの NSNotificationCenter

オーディオ ベースのアプリケーションを実装しています。つまり、2 つの AVPlayer を使用して 2 つの異なるサウンドを再生しています。サウンドが再生されたら、さまざまなアクションを実行する必要があります。これには、NSNotifications を使用しました。しかし、私の問題は、どのプレーヤーに関連する通知を見つけることができないかということです。私の通知コードとセレクターコードは次のとおりです。誰かが私がした間違いを教えてください。

}

よろしくお願いします、チャンドラ。

0 投票する
3 に答える
1546 参照

iphone - NSNotificationCenter:通知を投稿したものを確認するにはどうすればよいですか?

Testという名前のクラスAにNSNotificationオブザーバーがいます。オブザーバーはメソッドを呼び出し、checker:

次に、クラスBとCに2つの投稿があり、どちらもTestという名前のオブザーバーに送信されます。

どの投稿がオブザーバーに送信されているかを知り、チェックメソッドで使用できるようにカウンターをインクリメントしたいのですが、次のようになります。

userinfoを使用してこれを行うための提案を見てきましたが、その方法がよくわかりません。クラスB/Cでインスタンス化され、intまたはディクショナリなどとして渡されるカウンタオブジェクトです。

どんな助けでも大歓迎ですありがとう

0 投票する
1 に答える
376 参照

objective-c - NSDocumentのreadFromDataの適切なウィンドウを取得します:::

私はCocoaアプリにNSDocumentクラスを正常に実装しました。これは、データを適切に保存することもできます。しかし、ファイルを開くことに関しては問題があります。

これが私の基本的な設定です。

NSDocument MyFile == xib File => MyFile.xib

処理クラスとしてのNSObjectFileClass

FileClassは、ファイルを圧縮/解凍するクラスであり、MyFile.xibのウィンドウのテキストフィールドに接続されます。保存は、デフォルトのNSNotificationCenterを介して行われます。データには生のNSStringが含まれていないため、このクラスでデータを処理する必要があります。

開く必要のあるドキュメントが3つあるとしましょう。NSDocumentインスタンスが3つあり、NSNotificationsCenterを介してデータを送信しています。3つのNSDocumentがあるため、3つのウィンドウと3つのFileClassインスタンスがあります。受信したデータがこのウィンドウに提案されているかどうかをフィルタリングする可能性がないため、正しいFileClassがデータを受信できれば幸運です。ランダムなFileClassがファイルを処理し、関連するテキストビューのテキストを設定します。したがって、ウィンドウ1は、ウィンドウ3に表示されると考えられていたデータを表示できます。

データフロー:

NSDocument => readFromData =>NSNotificationCenter=>ランダムFileClass=>関連付けられたTextView。

絞り込むには:データを正しいウィンドウにルーティングするにはどうすればよいですか?また、この構成にFileClassを含めるにはどうすればよいですか?

前もって感謝します!

ポール

0 投票する
1 に答える
2646 参照

iphone - 外に触れている間UIViewでUIPickerViewを閉じたい

ビューの外側でUIViewに触れるだけで、UIPickerViewで閉じようとしています。キーボードの外側を押したときに NotificationCenter を使用して UIKeyboard を閉じる方法を説明する、このような他の投稿を見てきました。UIPickerView で同じことを行う同様の方法があるかどうかを知りたいです。現在、UIActionSheet 内で完了ボタンを使用していますが、ビューの外側をクリックするオプションをユーザーに提供するというアイデアが気に入っています。また、ほぼ同じように機能する「目に見えないボタン」を使用するというアイデアを認識しています。よりエレガントなソリューションがあるかどうかを確認したかっただけです。
前もって感謝します。